Documentation
¶
Index ¶
Constants ¶
View Source
const DEFAULT_MAX_FOLDERS_TO_CHECK = 100
Variables ¶
View Source
var RunTerragruntCommandNotSet = fmt.Errorf("The RunTerragrunt option has not been set on this TerragruntOptions object")
View Source
var TERRAFORM_COMMANDS_WITH_SUBCOMMAND = []string{
"debug",
"force-unlock",
"state",
}
Functions ¶
This section is empty.
Types ¶
type TerragruntOptions ¶
type TerragruntOptions struct {
// Location of the Terragrunt config file
TerragruntConfigPath string
// Location of the terraform binary
TerraformPath string
// Version of terraform (obtained by running 'terraform version')
TerraformVersion *version.Version
// Whether we should prompt the user for confirmation or always assume "yes"
NonInteractive bool
// Whether we should automatically run terraform init if necessary when executing other commands
AutoInit bool
// CLI args that are intended for Terraform (i.e. all the CLI args except the --terragrunt ones)
TerraformCliArgs []string
// The working directory in which to run Terraform
WorkingDir string
// The logger to use for all logging
Logger *log.Logger
// Environment variables at runtime
Env map[string]string
// Download Terraform configurations from the specified source location into a temporary folder and run
// Terraform in that temporary folder
Source string
// If set to true, delete the contents of the temporary folder before downloading Terraform source code into it
SourceUpdate bool
// Download Terraform configurations specified in the Source parameter into this folder
DownloadDir string
// The ARN of an IAM Role to assume before running Terraform
IamRole string
// If set to true, continue running *-all commands even if a dependency has errors. This is mostly useful for 'output-all <some_variable>'. See https://github.com/gruntwork-io/terragrunt/issues/193
IgnoreDependencyErrors bool
// If you want stdout to go somewhere other than os.stdout
Writer io.Writer
// If you want stderr to go somewhere other than os.stderr
ErrWriter io.Writer
// When searching the directory tree, this is the max folders to check before exiting with an error. This is
// exposed here primarily so we can set it to a low value at test time.
MaxFoldersToCheck int
// A command that can be used to run Terragrunt with the given options. This is useful for running Terragrunt
// multiple times (e.g. when spinning up a stack of Terraform modules). The actual command is normally defined
// in the cli package, which depends on almost all other packages, so we declare it here so that other
// packages can use the command without a direct reference back to the cli package (which would create a
// circular dependency).
RunTerragrunt func(*TerragruntOptions) error
}
TerragruntOptions represents options that configure the behavior of the Terragrunt program
func NewTerragruntOptions ¶ added in v0.6.0
func NewTerragruntOptions(terragruntConfigPath string) (*TerragruntOptions, error)
Create a new TerragruntOptions object with reasonable defaults for real usage
func NewTerragruntOptionsForTest ¶ added in v0.6.0
func NewTerragruntOptionsForTest(terragruntConfigPath string) (*TerragruntOptions, error)
Create a new TerragruntOptions object with reasonable defaults for test usage
func (*TerragruntOptions) AppendTerraformCliArgs ¶ added in v0.13.0
func (terragruntOptions *TerragruntOptions) AppendTerraformCliArgs(argsToAppend ...string)
Appends the given argsToAppend after the current TerraformCliArgs
func (*TerragruntOptions) Clone ¶ added in v0.6.0
func (terragruntOptions *TerragruntOptions) Clone(terragruntConfigPath string) *TerragruntOptions
Create a copy of this TerragruntOptions, but with different values for the given variables. This is useful for creating a TerragruntOptions that behaves the same way, but is used for a Terraform module in a different folder.
func (*TerragruntOptions) InsertTerraformCliArgs ¶ added in v0.13.0
func (terragruntOptions *TerragruntOptions) InsertTerraformCliArgs(argsToInsert ...string)
Inserts the given argsToInsert after the terraform command argument, but before the remaining args
Click to show internal directories.
Click to hide internal directories.