Documentation
¶
Index ¶
- func TfVarFilesExistAndAreValid(varFiles []string) error
- type ApplyArgs
- type ApplyArgsOptions
- func (po *ApplyArgsOptions) AreValid() error
- func (po *ApplyArgsOptions) GetArgAutoApprove() []string
- func (po *ApplyArgsOptions) GetArgAutoApproveValue() bool
- func (po *ApplyArgsOptions) GetArgRefreshOnly() []string
- func (po *ApplyArgsOptions) GetArgRefreshOnlyValue() bool
- func (po *ApplyArgsOptions) GetArgTerraformVarFiles() []string
- func (po *ApplyArgsOptions) GetArgTerraformVarFilesValue() []string
- func (po *ApplyArgsOptions) GetArgVars() []string
- func (po *ApplyArgsOptions) GetArgVarsValue() []TFInputVariable
- func (po *ApplyArgsOptions) VarFilesAreValid() error
- type ApplyArgsValidator
- type DestroyArgs
- type DestroyArgsOptions
- func (po *DestroyArgsOptions) AreValid() error
- func (po *DestroyArgsOptions) GetArgAutoApprove() []string
- func (po *DestroyArgsOptions) GetArgAutoApproveValue() bool
- func (po *DestroyArgsOptions) GetArgRefreshOnly() []string
- func (po *DestroyArgsOptions) GetArgRefreshOnlyValue() bool
- func (po *DestroyArgsOptions) GetArgTerraformVarFiles() []string
- func (po *DestroyArgsOptions) GetArgTerraformVarFilesValue() []string
- func (po *DestroyArgsOptions) GetArgVars() []string
- func (po *DestroyArgsOptions) GetArgVarsValue() []TFInputVariable
- func (po *DestroyArgsOptions) VarFilesAreValid() error
- type DestroyArgsValidator
- type GenerateTFInitCMDStrOptions
- type GetTerraformLifecycleCMDStringOptions
- type IacConfig
- type IacConfigOptions
- type IacLifeCycleCommand
- type IasC
- func (i *IasC) Apply(td *terradagger.TD, tfOpts TfGlobalOptions, tfCmdArgs ApplyArgs, _ []string) (*dagger.Container, container.Runtime, error)
- func (i *IasC) ApplyE(td *terradagger.TD, tfOpts TfGlobalOptions, options ApplyArgs, ...) (string, error)
- func (i *IasC) Destroy(td *terradagger.TD, tfOpts TfGlobalOptions, tfCmdArgs DestroyArgs, _ []string) (*dagger.Container, container.Runtime, error)
- func (i *IasC) DestroyE(td *terradagger.TD, tfOpts TfGlobalOptions, options DestroyArgs, ...) (string, error)
- func (i *IasC) Init(td *terradagger.TD, tfOpts TfGlobalOptions, tfCmdArgs InitArgs, _ []string) (*dagger.Container, container.Runtime, error)
- func (i *IasC) InitE(td *terradagger.TD, tfOpts TfGlobalOptions, options InitArgs, ...) (string, error)
- func (i *IasC) Plan(td *terradagger.TD, tfOpts TfGlobalOptions, tfCmdArgs PlanArgs, _ []string) (*dagger.Container, container.Runtime, error)
- func (i *IasC) PlanE(td *terradagger.TD, tfOpts TfGlobalOptions, options PlanArgs, ...) (string, error)
- type InitArgs
- type InitArgsOptions
- func (ti *InitArgsOptions) AreValid() error
- func (ti *InitArgsOptions) BackendFileIsValid() error
- func (ti *InitArgsOptions) GetArgBackendConfigFile() []string
- func (ti *InitArgsOptions) GetArgBackendConfigFileValue() string
- func (ti *InitArgsOptions) GetArgNoColor() []string
- func (ti *InitArgsOptions) GetArgNoColourValue() bool
- func (ti *InitArgsOptions) GetArgUpgrade() []string
- func (ti *InitArgsOptions) GetArgUpgradeValue() bool
- type InitArgsValidator
- type LifecycleCommandConfig
- type PlanArgs
- type PlanArgsOptions
- func (po *PlanArgsOptions) AreValid() error
- func (po *PlanArgsOptions) GetArgRefreshOnly() []string
- func (po *PlanArgsOptions) GetArgRefreshOnlyValue() bool
- func (po *PlanArgsOptions) GetArgTerraformVarFiles() []string
- func (po *PlanArgsOptions) GetArgTerraformVarFilesValue() []string
- func (po *PlanArgsOptions) GetArgVars() []string
- func (po *PlanArgsOptions) GetArgVarsValue() []TFInputVariable
- func (po *PlanArgsOptions) VarFilesAreValid() error
- type PlanArgsValidator
- type TFInputVariable
- type TerraformContainerConfig
- type TerraformContainerConfigOptions
- func (t *TerraformContainerConfigOptions) AddEnvVarsToTerraformContainer(td *terradagger.TD, runtime container.Runtime, tfContainer *dagger.Container) *dagger.Container
- func (t *TerraformContainerConfigOptions) GetIacConfig() IacConfig
- func (t *TerraformContainerConfigOptions) GetTfOptions() TfGlobalOptions
- type TerraformContainerSetup
- type TerraformRunner
- type TerraformRunnerOptions
- func (t *TerraformRunnerOptions) RunApply(binary string, args *ApplyArgsOptions) (*dagger.Container, container.Runtime, error)
- func (t *TerraformRunnerOptions) RunApplyE(binary string, args *ApplyArgsOptions) (string, error)
- func (t *TerraformRunnerOptions) RunDestroy(binary string, args *DestroyArgsOptions) (*dagger.Container, container.Runtime, error)
- func (t *TerraformRunnerOptions) RunDestroyE(binary string, args *DestroyArgsOptions) (string, error)
- func (t *TerraformRunnerOptions) RunInit(binary string, args *InitArgsOptions) (*dagger.Container, container.Runtime, error)
- func (t *TerraformRunnerOptions) RunInitE(binary string, args *InitArgsOptions) (string, error)
- func (t *TerraformRunnerOptions) RunPlan(binary string, args *PlanArgsOptions) (*dagger.Container, container.Runtime, error)
- func (t *TerraformRunnerOptions) RunPlanE(binary string, args *PlanArgsOptions) (string, error)
- type TerragruntConfig
- type TerragruntOptions
- type TerragruntRunnerOptions
- func (tg *TerragruntRunnerOptions) RunApply(binary string, args *ApplyArgsOptions) (*dagger.Container, container.Runtime, error)
- func (tg *TerragruntRunnerOptions) RunApplyE(binary string, args *ApplyArgsOptions) (string, error)
- func (tg *TerragruntRunnerOptions) RunDestroy(binary string, args *DestroyArgsOptions) (*dagger.Container, container.Runtime, error)
- func (tg *TerragruntRunnerOptions) RunDestroyE(binary string, args *DestroyArgsOptions) (string, error)
- func (tg *TerragruntRunnerOptions) RunInit(binary string, args *InitArgsOptions) (*dagger.Container, container.Runtime, error)
- func (tg *TerragruntRunnerOptions) RunInitE(binary string, args *InitArgsOptions) (string, error)
- func (tg *TerragruntRunnerOptions) RunPlan(binary string, args *PlanArgsOptions) (*dagger.Container, container.Runtime, error)
- func (tg *TerragruntRunnerOptions) RunPlanE(binary string, args *PlanArgsOptions) (string, error)
- type TfArgs
- type TfGlobalOptions
- type TfGlobalValidator
- type TfLifecycleCMD
- func (t *TfLifecycleCMD) GenerateTFInitCommandStr(options *GenerateTFInitCMDStrOptions) (string, error)
- func (t *TfLifecycleCMD) GetApplyCommand() string
- func (t *TfLifecycleCMD) GetDestroyCommand() string
- func (t *TfLifecycleCMD) GetEntryPoint(iaacTool string) string
- func (t *TfLifecycleCMD) GetInitCommand() string
- func (t *TfLifecycleCMD) GetPlanCommand() string
- func (t *TfLifecycleCMD) GetTerraformLifecycleCMDString(options *GetTerraformLifecycleCMDStringOptions) (string, error)
- func (t *TfLifecycleCMD) GetValidateCommand() string
- type TfLifecycleCMDResolver
- type TfOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func TfVarFilesExistAndAreValid ¶ added in v1.3.0
TfVarFilesExistAndAreValid checks if the terraform var files exist and are valid It checks if the files exist, have the correct extension and are valid files
Types ¶
type ApplyArgs ¶ added in v1.2.1
type ApplyArgs interface {
GetArgRefreshOnly() []string
GetArgRefreshOnlyValue() bool
GetArgTerraformVarFiles() []string
GetArgTerraformVarFilesValue() []string
GetArgVars() []string
GetArgVarsValue() []TFInputVariable
GetArgAutoApprove() []string
GetArgAutoApproveValue() bool
// ApplyArgsValidator is an interface for validating the apply args,
// And also inherits from the TfArgs interface
ApplyArgsValidator
}
type ApplyArgsOptions ¶ added in v1.2.1
type ApplyArgsOptions struct {
// RefreshOnly is a flag to only refresh the state. Equivalent to
// terraform plan -refresh-only
RefreshOnly bool
// TerraformVarFiles is a list of terraform var files to use
TerraformVarFiles []string
// Vars is a list of terraform vars to use
Vars []TFInputVariable
// AutoApprove is a flag to auto approve the plan
AutoApprove bool
// TfGlobalOptions is a struct that contains the global options for the terraform binary
// It implements the TfGlobalOptions interface
TfGlobalOptions TfGlobalOptions
}
func (*ApplyArgsOptions) AreValid ¶ added in v1.3.0
func (po *ApplyArgsOptions) AreValid() error
func (*ApplyArgsOptions) GetArgAutoApprove ¶ added in v1.2.1
func (po *ApplyArgsOptions) GetArgAutoApprove() []string
func (*ApplyArgsOptions) GetArgAutoApproveValue ¶ added in v1.3.0
func (po *ApplyArgsOptions) GetArgAutoApproveValue() bool
func (*ApplyArgsOptions) GetArgRefreshOnly ¶ added in v1.2.1
func (po *ApplyArgsOptions) GetArgRefreshOnly() []string
func (*ApplyArgsOptions) GetArgRefreshOnlyValue ¶ added in v1.3.0
func (po *ApplyArgsOptions) GetArgRefreshOnlyValue() bool
func (*ApplyArgsOptions) GetArgTerraformVarFiles ¶ added in v1.2.1
func (po *ApplyArgsOptions) GetArgTerraformVarFiles() []string
func (*ApplyArgsOptions) GetArgTerraformVarFilesValue ¶ added in v1.3.0
func (po *ApplyArgsOptions) GetArgTerraformVarFilesValue() []string
func (*ApplyArgsOptions) GetArgVars ¶ added in v1.2.1
func (po *ApplyArgsOptions) GetArgVars() []string
func (*ApplyArgsOptions) GetArgVarsValue ¶ added in v1.3.0
func (po *ApplyArgsOptions) GetArgVarsValue() []TFInputVariable
func (*ApplyArgsOptions) VarFilesAreValid ¶ added in v1.3.0
func (po *ApplyArgsOptions) VarFilesAreValid() error
type ApplyArgsValidator ¶ added in v1.3.0
type DestroyArgs ¶ added in v1.2.1
type DestroyArgs interface {
GetArgRefreshOnly() []string
GetArgRefreshOnlyValue() bool
GetArgTerraformVarFiles() []string
GetArgTerraformVarFilesValue() []string
GetArgVars() []string
GetArgVarsValue() []TFInputVariable
GetArgAutoApprove() []string
GetArgAutoApproveValue() bool
// DestroyArgsValidator is an interface for validating the destroy args,
// And also inherits from the TfArgs interface
DestroyArgsValidator
}
type DestroyArgsOptions ¶ added in v1.2.1
type DestroyArgsOptions struct {
// RefreshOnly is a flag to only refresh the state. Equivalent to
// terraform plan -refresh-only
RefreshOnly bool
// TerraformVarFiles is a list of terraform var files to use
TerraformVarFiles []string
// Vars is a list of terraform vars to use
Vars []TFInputVariable
// AutoApprove is a flag to auto approve the plan
AutoApprove bool
// TfGlobalOptions is a struct that contains the global options for the terraform binary
// It implements the TfGlobalOptions interface
TfGlobalOptions TfGlobalOptions
}
func (*DestroyArgsOptions) AreValid ¶ added in v1.3.0
func (po *DestroyArgsOptions) AreValid() error
func (*DestroyArgsOptions) GetArgAutoApprove ¶ added in v1.2.1
func (po *DestroyArgsOptions) GetArgAutoApprove() []string
func (*DestroyArgsOptions) GetArgAutoApproveValue ¶ added in v1.3.0
func (po *DestroyArgsOptions) GetArgAutoApproveValue() bool
func (*DestroyArgsOptions) GetArgRefreshOnly ¶ added in v1.2.1
func (po *DestroyArgsOptions) GetArgRefreshOnly() []string
func (*DestroyArgsOptions) GetArgRefreshOnlyValue ¶ added in v1.3.0
func (po *DestroyArgsOptions) GetArgRefreshOnlyValue() bool
func (*DestroyArgsOptions) GetArgTerraformVarFiles ¶ added in v1.2.1
func (po *DestroyArgsOptions) GetArgTerraformVarFiles() []string
func (*DestroyArgsOptions) GetArgTerraformVarFilesValue ¶ added in v1.3.0
func (po *DestroyArgsOptions) GetArgTerraformVarFilesValue() []string
func (*DestroyArgsOptions) GetArgVars ¶ added in v1.2.1
func (po *DestroyArgsOptions) GetArgVars() []string
func (*DestroyArgsOptions) GetArgVarsValue ¶ added in v1.3.0
func (po *DestroyArgsOptions) GetArgVarsValue() []TFInputVariable
func (*DestroyArgsOptions) VarFilesAreValid ¶ added in v1.3.0
func (po *DestroyArgsOptions) VarFilesAreValid() error
type DestroyArgsValidator ¶ added in v1.3.0
type GenerateTFInitCMDStrOptions ¶ added in v1.2.1
type GenerateTFInitCMDStrOptions struct {
// contains filtered or unexported fields
}
type GetTerraformLifecycleCMDStringOptions ¶ added in v1.2.1
type GetTerraformLifecycleCMDStringOptions struct {
// contains filtered or unexported fields
}
type IacConfigOptions ¶
type IacConfigOptions struct {
Binary string // Either terragrunt, or terraform.
ContainerImage string
Version string
}
func (*IacConfigOptions) GetBinary ¶
func (i *IacConfigOptions) GetBinary() string
func (*IacConfigOptions) GetContainerImage ¶
func (i *IacConfigOptions) GetContainerImage() string
func (*IacConfigOptions) GetVersion ¶
func (i *IacConfigOptions) GetVersion() string
type IacLifeCycleCommand ¶ added in v1.2.1
type IacLifeCycleCommand interface {
Init(td *terradagger.TD, tfOpts TfGlobalOptions, options InitArgs, extraArgs []string) (*dagger.Container, container.Runtime, error)
InitE(td *terradagger.TD, tfOpts TfGlobalOptions, options InitArgs, extraArgs []string) (string, error)
Plan(td *terradagger.TD, tfOpts TfGlobalOptions, options PlanArgs, extraArgs []string) (*dagger.Container, container.Runtime, error)
PlanE(td *terradagger.TD, tfOpts TfGlobalOptions, options PlanArgs, extraArgs []string) (string, error)
Apply(td *terradagger.TD, tfOpts TfGlobalOptions, options ApplyArgs, extraArgs []string) (*dagger.Container, container.Runtime, error)
ApplyE(td *terradagger.TD, tfOpts TfGlobalOptions, options ApplyArgs, extraArgs []string) (string, error)
Destroy(td *terradagger.TD, tfOpts TfGlobalOptions, options DestroyArgs, extraArgs []string) (*dagger.Container, container.Runtime, error)
DestroyE(td *terradagger.TD, tfOpts TfGlobalOptions, options DestroyArgs, extraArgs []string) (string, error)
}
type IasC ¶
type IasC struct {
Config IacConfig
}
func (*IasC) ApplyE ¶ added in v1.2.1
func (i *IasC) ApplyE(td *terradagger.TD, tfOpts TfGlobalOptions, options ApplyArgs, extraArgs []string) (string, error)
func (*IasC) Destroy ¶ added in v1.2.1
func (i *IasC) Destroy(td *terradagger.TD, tfOpts TfGlobalOptions, tfCmdArgs DestroyArgs, _ []string) (*dagger.Container, container.Runtime, error)
func (*IasC) DestroyE ¶ added in v1.2.1
func (i *IasC) DestroyE(td *terradagger.TD, tfOpts TfGlobalOptions, options DestroyArgs, extraArgs []string) (string, error)
func (*IasC) InitE ¶
func (i *IasC) InitE(td *terradagger.TD, tfOpts TfGlobalOptions, options InitArgs, extraArgs []string) (string, error)
func (*IasC) PlanE ¶
func (i *IasC) PlanE(td *terradagger.TD, tfOpts TfGlobalOptions, options PlanArgs, extraArgs []string) (string, error)
type InitArgs ¶
type InitArgs interface {
GetArgNoColor() []string
GetArgNoColourValue() bool
GetArgBackendConfigFile() []string
GetArgBackendConfigFileValue() string
GetArgUpgrade() []string
GetArgUpgradeValue() bool
// InitArgsValidator is an interface for validating the init args,
// And also inherits from the TfArgs interface
InitArgsValidator
}
type InitArgsOptions ¶ added in v1.2.1
type InitArgsOptions struct {
// NoColor is a flag to disable colors in terraform output
NoColor bool
// BackendConfigFile is the path to the backend config file
BackendConfigFile string
// Upgrade is a flag to upgrade the modules and plugins
Upgrade bool
// TfGlobalOptions is a struct that contains the global options for the terraform binary
// It implements the TfGlobalOptions interface
TfGlobalOptions TfGlobalOptions
}
func (*InitArgsOptions) AreValid ¶ added in v1.3.0
func (ti *InitArgsOptions) AreValid() error
func (*InitArgsOptions) BackendFileIsValid ¶ added in v1.3.0
func (ti *InitArgsOptions) BackendFileIsValid() error
func (*InitArgsOptions) GetArgBackendConfigFile ¶ added in v1.2.1
func (ti *InitArgsOptions) GetArgBackendConfigFile() []string
func (*InitArgsOptions) GetArgBackendConfigFileValue ¶ added in v1.3.0
func (ti *InitArgsOptions) GetArgBackendConfigFileValue() string
func (*InitArgsOptions) GetArgNoColor ¶ added in v1.2.1
func (ti *InitArgsOptions) GetArgNoColor() []string
func (*InitArgsOptions) GetArgNoColourValue ¶ added in v1.3.0
func (ti *InitArgsOptions) GetArgNoColourValue() bool
func (*InitArgsOptions) GetArgUpgrade ¶ added in v1.2.1
func (ti *InitArgsOptions) GetArgUpgrade() []string
func (*InitArgsOptions) GetArgUpgradeValue ¶ added in v1.3.0
func (ti *InitArgsOptions) GetArgUpgradeValue() bool
type InitArgsValidator ¶ added in v1.3.0
type LifecycleCommandConfig ¶ added in v1.2.1
type PlanArgs ¶
type PlanArgs interface {
GetArgRefreshOnly() []string
GetArgRefreshOnlyValue() bool
GetArgTerraformVarFiles() []string
GetArgTerraformVarFilesValue() []string
GetArgVars() []string
GetArgVarsValue() []TFInputVariable
// PlanArgsValidator is an interface for validating the plan args,
// And also inherits from the TfArgs interface
PlanArgsValidator
}
type PlanArgsOptions ¶ added in v1.2.1
type PlanArgsOptions struct {
// RefreshOnly is a flag to only refresh the state. Equivalent to
// terraform plan - refresh-only
RefreshOnly bool
// TerraformVarFiles is a list of terraform var files to use
TerraformVarFiles []string
// Vars is a list of terraform vars to use
Vars []TFInputVariable
// TfGlobalOptions is a struct that contains the global options for the terraform binary
// It implements the TfGlobalOptions interface
TfGlobalOptions TfGlobalOptions
}
func (*PlanArgsOptions) AreValid ¶ added in v1.3.0
func (po *PlanArgsOptions) AreValid() error
func (*PlanArgsOptions) GetArgRefreshOnly ¶ added in v1.2.1
func (po *PlanArgsOptions) GetArgRefreshOnly() []string
func (*PlanArgsOptions) GetArgRefreshOnlyValue ¶ added in v1.3.0
func (po *PlanArgsOptions) GetArgRefreshOnlyValue() bool
func (*PlanArgsOptions) GetArgTerraformVarFiles ¶ added in v1.2.1
func (po *PlanArgsOptions) GetArgTerraformVarFiles() []string
func (*PlanArgsOptions) GetArgTerraformVarFilesValue ¶ added in v1.3.0
func (po *PlanArgsOptions) GetArgTerraformVarFilesValue() []string
func (*PlanArgsOptions) GetArgVars ¶ added in v1.2.1
func (po *PlanArgsOptions) GetArgVars() []string
func (*PlanArgsOptions) GetArgVarsValue ¶ added in v1.3.0
func (po *PlanArgsOptions) GetArgVarsValue() []TFInputVariable
func (*PlanArgsOptions) VarFilesAreValid ¶ added in v1.3.0
func (po *PlanArgsOptions) VarFilesAreValid() error
type PlanArgsValidator ¶ added in v1.3.0
type TFInputVariable ¶
type TerraformContainerConfig ¶ added in v1.2.1
type TerraformContainerConfig interface {
GetTfOptions() TfGlobalOptions
GetIacConfig() IacConfig
}
type TerraformContainerConfigOptions ¶ added in v1.2.1
type TerraformContainerConfigOptions struct {
// contains filtered or unexported fields
}
func (*TerraformContainerConfigOptions) AddEnvVarsToTerraformContainer ¶ added in v1.2.1
func (t *TerraformContainerConfigOptions) AddEnvVarsToTerraformContainer(td *terradagger.TD, runtime container.Runtime, tfContainer *dagger.Container) *dagger.Container
AddEnvVarsToTerraformContainer configures the container with the appropriate environment variables.
func (*TerraformContainerConfigOptions) GetIacConfig ¶ added in v1.2.1
func (t *TerraformContainerConfigOptions) GetIacConfig() IacConfig
func (*TerraformContainerConfigOptions) GetTfOptions ¶ added in v1.2.1
func (t *TerraformContainerConfigOptions) GetTfOptions() TfGlobalOptions
type TerraformContainerSetup ¶ added in v1.2.1
type TerraformRunner ¶ added in v1.2.1
type TerraformRunner interface {
RunInit(binary string, options *InitArgsOptions) (*dagger.Container, container.Runtime, error)
RunInitE(binary string, options *InitArgsOptions) (string, error)
RunPlan(binary string, options *PlanArgsOptions) (*dagger.Container, container.Runtime, error)
RunPlanE(binary string, options *PlanArgsOptions) (string, error)
RunApply(binary string, options *ApplyArgsOptions) (*dagger.Container, container.Runtime, error)
RunApplyE(binary string, options *ApplyArgsOptions) (string, error)
RunDestroy(binary string, options *DestroyArgsOptions) (*dagger.Container, container.Runtime, error)
RunDestroyE(binary string, options *DestroyArgsOptions) (string, error)
}
func NewTerraformRunner ¶ added in v1.2.1
func NewTerraformRunner(td *terradagger.TD, tfGLobalOptions TfGlobalOptions) TerraformRunner
func NewTerragruntRunner ¶ added in v1.2.1
func NewTerragruntRunner(td *terradagger.TD, tfGLobalOptions TfGlobalOptions, tgConfig TerragruntConfig) TerraformRunner
type TerraformRunnerOptions ¶ added in v1.2.1
type TerraformRunnerOptions struct {
TfGlobalOptions TfGlobalOptions
// contains filtered or unexported fields
}
func (*TerraformRunnerOptions) RunApply ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunApply(binary string, args *ApplyArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerraformRunnerOptions) RunApplyE ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunApplyE(binary string, args *ApplyArgsOptions) (string, error)
func (*TerraformRunnerOptions) RunDestroy ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunDestroy(binary string, args *DestroyArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerraformRunnerOptions) RunDestroyE ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunDestroyE(binary string, args *DestroyArgsOptions) (string, error)
func (*TerraformRunnerOptions) RunInit ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunInit(binary string, args *InitArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerraformRunnerOptions) RunInitE ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunInitE(binary string, args *InitArgsOptions) (string, error)
func (*TerraformRunnerOptions) RunPlan ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunPlan(binary string, args *PlanArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerraformRunnerOptions) RunPlanE ¶ added in v1.2.1
func (t *TerraformRunnerOptions) RunPlanE(binary string, args *PlanArgsOptions) (string, error)
type TerragruntConfig ¶ added in v1.2.1
type TerragruntConfig interface {
GetConfig() []string
}
type TerragruntOptions ¶ added in v1.2.1
type TerragruntOptions struct {
// The path to the Terragrunt config file. Default is terragrunt.hcl.
Config string `json:"terragrunt-config,omitempty"`
// Write terragrunt-debug.tfvars to working folder to help root-cause issues.
Debug bool `json:"terragrunt-debug,omitempty"`
// When this flag is set Terragrunt will not update the remote state bucket.
DisableBucketUpdate bool `json:"terragrunt-disable-bucket-update,omitempty"`
// When this flag is set, Terragrunt will not validate the terraform command.
DisableCommandValidation bool `json:"terragrunt-disable-command-validation,omitempty"`
// The path where to download Terraform code. Default is .terragrunt-cache in the working directory.
DownloadDir string `json:"terragrunt-download-dir,omitempty"`
// Unix-style glob of directories to exclude when running *-all commands.
ExcludeDir string `json:"terragrunt-exclude-dir,omitempty"`
// When this flag is set Terragrunt will fail if the remote state bucket needs to be created.
FailOnStateBucketCreation bool `json:"terragrunt-fail-on-state-bucket-creation,omitempty"`
// The option fetchs dependency output directly from the state file instead of init dependencies and running terraform on them.
FetchDependencyOutputFromState bool `json:"terragrunt-fetch-dependency-output-from-state,omitempty"`
// Session duration for IAM Assume Role session.
IamAssumeRoleDuration string `json:"terragrunt-iam-assume-role-duration,omitempty"`
// Name for the IAM Assummed Role session.
IamAssumeRoleSessionName string `json:"terragrunt-iam-assume-role-session-name,omitempty"`
// Assume the specified IAM role before executing Terraform.
IamRole string `json:"terragrunt-iam-role,omitempty"`
// *-all commands continue processing components even if a dependency fails.
IgnoreDependencyErrors bool `json:"terragrunt-ignore-dependency-errors,omitempty"`
// *-all commands will be run disregarding the dependencies.
IgnoreDependencyOrder bool `json:"terragrunt-ignore-dependency-order,omitempty"`
// *-all commands will not attempt to include external dependencies.
IgnoreExternalDependencies bool `json:"terragrunt-ignore-external-dependencies,omitempty"`
// Unix-style glob of directories to include when running *-all commands.
IncludeDir string `json:"terragrunt-include-dir,omitempty"`
// *-all commands will include external dependencies.
IncludeExternalDependencies bool `json:"terragrunt-include-external-dependencies,omitempty"`
// When this flag is set output from Terraform sub-commands is prefixed with module path.
IncludeModulePrefix bool `json:"terragrunt-include-module-prefix,omitempty"`
// If specified, Terragrunt will output its logs in JSON format.
JSONLog bool `json:"terragrunt-json-log,omitempty"`
// Sets the logging level for Terragrunt. Supported levels: panic, fatal, error, warn, info, debug, trace.
LogLevel string `json:"terragrunt-log-level,omitempty"`
// If flag is set, 'run-all' will only run the command against Terragrunt modules that include the specified file.
ModulesThatInclude string `json:"terragrunt-modules-that-include,omitempty"`
// Don't automatically append -auto-approve to the underlying Terraform commands run with 'run-all'.
NoAutoApprove bool `json:"terragrunt-no-auto-approve,omitempty"`
// Don't automatically run 'terraform init' during other terragrunt commands. You must run 'terragrunt init' manually.
NoAutoInit bool `json:"terragrunt-no-auto-init,omitempty"`
// Don't automatically re-run command in case of transient errors.
NoAutoRetry bool `json:"terragrunt-no-auto-retry,omitempty"`
// If specified, Terragrunt output won't contain any color.
NoColor bool `json:"terragrunt-no-color,omitempty"`
// Assume "yes" for all prompts.
NonInteractive bool `json:"terragrunt-non-interactive,omitempty"`
// *-all commands parallelism set to at most N modules.
Parallelism int `json:"terragrunt-parallelism,omitempty"`
// Download Terraform configurations from the specified source into a temporary folder, and run Terraform in that temporary folder.
Source string `json:"terragrunt-source,omitempty"`
// Replace any source URL (including the source URL of a config pulled in with dependency blocks) that has root source with dest.
SourceMap string `json:"terragrunt-source-map,omitempty"`
// Delete the contents of the temporary folder to clear out any old, cached source code before downloading new source code into it.
SourceUpdate bool `json:"terragrunt-source-update,omitempty"`
// If flag is set, only modules under the directories passed in with '--terragrunt-include-dir' will be included.
StrictInclude bool `json:"terragrunt-strict-include,omitempty"`
// If specified, Terragrunt will wrap Terraform stdout and stderr in JSON.
TfLogsToJSON bool `json:"terragrunt-tf-logs-to-json,omitempty"`
// Path to the Terraform binary. Default is terraform (on PATH).
TfPath string `json:"terragrunt-tfpath,omitempty"`
// Enables caching of includes during partial parsing operations. Will also be used for the --terragrunt-iam-role option if provided.
UsePartialParseConfigCache bool `json:"terragrunt-use-partial-parse-config-cache,omitempty"`
}
func (*TerragruntOptions) GetConfig ¶ added in v1.2.1
func (tg *TerragruntOptions) GetConfig() []string
type TerragruntRunnerOptions ¶ added in v1.2.1
type TerragruntRunnerOptions struct {
TfGlobalOptions TfGlobalOptions
TgConfig TerragruntConfig
// contains filtered or unexported fields
}
func (*TerragruntRunnerOptions) RunApply ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunApply(binary string, args *ApplyArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerragruntRunnerOptions) RunApplyE ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunApplyE(binary string, args *ApplyArgsOptions) (string, error)
func (*TerragruntRunnerOptions) RunDestroy ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunDestroy(binary string, args *DestroyArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerragruntRunnerOptions) RunDestroyE ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunDestroyE(binary string, args *DestroyArgsOptions) (string, error)
func (*TerragruntRunnerOptions) RunInit ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunInit(binary string, args *InitArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerragruntRunnerOptions) RunInitE ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunInitE(binary string, args *InitArgsOptions) (string, error)
func (*TerragruntRunnerOptions) RunPlan ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunPlan(binary string, args *PlanArgsOptions) (*dagger.Container, container.Runtime, error)
func (*TerragruntRunnerOptions) RunPlanE ¶ added in v1.2.1
func (tg *TerragruntRunnerOptions) RunPlanE(binary string, args *PlanArgsOptions) (string, error)
type TfArgs ¶ added in v1.3.0
type TfArgs interface {
AreValid() error
}
TfArgs is an interface to validate terraform arguments It's shared between different terraform commands, And it's the common behavior for all terraform command's arguments
type TfGlobalOptions ¶
type TfGlobalOptions interface {
GetModulePath() string
GetModulePathFull() string
GetTerraformVersion() string
GetEnableSSHPrivateGit() bool
GetCustomContainerImage() string
GetInvalidateCache() bool
IsAutoDetectTFVarsFromHost() bool
IsAutoDetectAWSKeysFromHost() bool
IsMirrorAllEnvVarsFromHost() bool
GetEnvVarsToInjectByKeyFromHost() []string
TfGlobalValidator
}
func WithOptions ¶
func WithOptions(td *terradagger.TD, o *TfOptions) TfGlobalOptions
WithOptions is a function that returns a TfGlobalOptions with the options passed in. It's a constructor for the TfGlobalOptions
type TfGlobalValidator ¶ added in v1.2.1
type TfLifecycleCMD ¶ added in v1.2.1
type TfLifecycleCMD struct{}
func (*TfLifecycleCMD) GenerateTFInitCommandStr ¶ added in v1.2.1
func (t *TfLifecycleCMD) GenerateTFInitCommandStr(options *GenerateTFInitCMDStrOptions) (string, error)
func (*TfLifecycleCMD) GetApplyCommand ¶ added in v1.2.1
func (t *TfLifecycleCMD) GetApplyCommand() string
func (*TfLifecycleCMD) GetDestroyCommand ¶ added in v1.2.1
func (t *TfLifecycleCMD) GetDestroyCommand() string
func (*TfLifecycleCMD) GetEntryPoint ¶ added in v1.2.1
func (t *TfLifecycleCMD) GetEntryPoint(iaacTool string) string
func (*TfLifecycleCMD) GetInitCommand ¶ added in v1.2.1
func (t *TfLifecycleCMD) GetInitCommand() string
func (*TfLifecycleCMD) GetPlanCommand ¶ added in v1.2.1
func (t *TfLifecycleCMD) GetPlanCommand() string
func (*TfLifecycleCMD) GetTerraformLifecycleCMDString ¶ added in v1.2.1
func (t *TfLifecycleCMD) GetTerraformLifecycleCMDString(options *GetTerraformLifecycleCMDStringOptions) (string, error)
func (*TfLifecycleCMD) GetValidateCommand ¶ added in v1.2.1
func (t *TfLifecycleCMD) GetValidateCommand() string
type TfLifecycleCMDResolver ¶ added in v1.2.1
type TfLifecycleCMDResolver interface {
GetTerraformLifecycleCMDString(options *GetTerraformLifecycleCMDStringOptions) (string, error)
GenerateTFInitCommandStr(options *GenerateTFInitCMDStrOptions) (string, error)
}
type TfOptions ¶
type TfOptions struct {
// ModulePath is the directory of the terraform code
ModulePath string
// TerraformVersion is the version of terraform to use
TerraformVersion string
// MirrorAllEnvVarsFromHost is a flag to scan the environment variables and inject them into the terraform code
// The variables that'll be injected are the ones that start with TF_VAR_
MirrorAllEnvVarsFromHost bool
// AutoDetectTFVarsFromHost is a flag to scan the environment variables and inject them into the terraform code
AutoDetectTFVarsFromHost bool
// AutoDetectAWSKeysFromHost is a flag to scan the environment variables and inject them into the terraform code
AutoDetectAWSKeysFromHost bool
// CustomContainerImage is the custom image to use for the terraform container
CustomContainerImage string
// EnableSSHPrivateGit is a flag to use SSH for the modules
EnableSSHPrivateGit bool
// InvalidateCache is a flag to invalidate the cache
InvalidateCache bool
// EnvVarsToInjectByKeyFromHost is a slice of environment variables to inject into the container
EnvVarsToInjectByKeyFromHost []string
}
Click to show internal directories.
Click to hide internal directories.