plan

package
v0.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 14, 2021 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

Package planner plans the steps that needs to be taken to move an Environment to desired state.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Planner

type Planner struct {

	// AllowedStepTypes is a set of step types that are allowed to execute.
	// A nil set allows all steps.
	AllowedStepTypes map[step.Type]struct{}
	// Cloud provides generic cloud functions.
	Cloud cloud.Cloud
	// Terraform is the terraform implementation to use.
	Terraform terraform.Terraformer
	// Kubectl is the kubectl implementation to use.
	Kubectl kubectl.Kubectrler
	// Azure is the azure cli implementation to use.
	Azure azure.AZer
	// Addon can deploy k8s addon resources.
	Addon addon.Addonr

	Log logr.Logger
	// contains filtered or unexported fields
}

Planner plans the steps that are going to be executed.

func (*Planner) Plan

func (p *Planner) Plan(nsn types.NamespacedName, src Sourcer, destroy bool, ispec v1.InfraSpec, cspec []v1.ClusterSpec) ([]step.Step, error)

Plan returns a ordered collection of steps. The step hash field reflects the current source/parameters for that step.

type Sourcer

type Sourcer interface {
	Workspace(nsn types.NamespacedName, name string) (source.Workspace, bool)
}

Sourcer keeps source code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL