Documentation ¶
Index ¶
- Variables
- func WithDefaultApply(b bool) func(o *clientOpts)
- func WithDefaultDestroy(b bool) func(o *clientOpts)
- func WithDefaultPlan(b bool) func(o *clientOpts)
- func WithRunApply(b bool) func(o *runOpts)
- func WithRunDestroy(b bool) func(o *runOpts)
- func WithRunPlan(b bool) func(o *runOpts)
- type Client
- type Plan
- type Stack
- type Stacker
- type StateMode
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrNoStackName = errors.New("no stack name") ErrDuplicateStackName = errors.New("duplicate stack name") )
Functions ¶
func WithDefaultApply ¶
func WithDefaultApply(b bool) func(o *clientOpts)
func WithDefaultDestroy ¶
func WithDefaultDestroy(b bool) func(o *clientOpts)
func WithDefaultPlan ¶
func WithDefaultPlan(b bool) func(o *clientOpts)
func WithRunApply ¶
func WithRunApply(b bool) func(o *runOpts)
func WithRunDestroy ¶
func WithRunDestroy(b bool) func(o *runOpts)
func WithRunPlan ¶
func WithRunPlan(b bool) func(o *runOpts)
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client runs Terraform stacks and keeps a record of the runs in order to provide a summary of the changes
type Plan ¶
type Plan struct { AddResources []*tfjson.ResourceChange ChangeResources []*tfjson.ResourceChange DestroyResources []*tfjson.ResourceChange }
type Stack ¶
type Stack struct { // Name is the unique name of the Stack. // It is used for the working directory where the Terraform code is // generated and the Terraform CLI is executed. Name string `lingon:"-" validate:"required"` // contains filtered or unexported fields }
func (*Stack) IsStateComplete ¶
func (*Stack) SetStateMode ¶
type Stacker ¶
type Stacker interface { terra.Exporter StackName() string SetPlan(*tfjson.Plan) SetStateMode(StateMode) IsStateComplete() bool Plan() *Plan }
IAMRole aws.IamRole EKSCluster aws.EksCluster ... }
type StateMode ¶
type StateMode int
const ( // StateModeUnknown the state mode has not been determined yet (no plan/apply) StateModeUnknown StateMode = 0 // StateModeEmpty there is no state (no apply yet) StateModeEmpty StateMode = 1 // StateModePartial there is a state, but there are resources in the Stack // that are not in the state yet (need to be applied) StateModePartial StateMode = 2 // StateModeComplete the Stack and Terraform state are in complete sync StateModeComplete StateMode = 3 )
Click to show internal directories.
Click to hide internal directories.