config

package
v0.12.14 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2023 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultTerragruntConfigPath = "terraform.tfvars"
View Source
const OldTerragruntConfigPath = ".terragrunt"

Variables

View Source
var HELPER_FUNCTION_GET_ENV_PARAMETERS_SYNTAX_REGEX = regexp.MustCompile(`\s*"(?P<env>[^=]+?)"\s*\,\s*"(?P<default>.*?)"\s*`)
View Source
var HELPER_FUNCTION_SYNTAX_REGEX = regexp.MustCompile(`\$\{(.*?)\((.*?)\)\}`)
View Source
var INTERPOLATION_SYNTAX_REGEX = regexp.MustCompile("\\$\\{.*?\\}")
View Source
var MAX_PARENT_FOLDERS_TO_CHECK = 100

Functions

func DefaultConfigPath added in v0.10.0

func DefaultConfigPath(workingDir string) string

Return the default path to use for the Terragrunt configuration file. The reason this is a method rather than a constant is that older versions of Terragrunt stored configuration in a different file. This method returns the path to the old configuration format if such a file exists and the new format otherwise.

func FindConfigFilesInPath added in v0.10.0

func FindConfigFilesInPath(rootPath string) ([]string, error)

Returns a list of all Terragrunt config files in the given path or any subfolder of the path. A file is a Terragrunt config file if it has a name as returned by the DefaultConfigPath method and contains Terragrunt config contents as returned by the IsTerragruntConfigFile method.

func IsTerragruntConfigFile added in v0.10.0

func IsTerragruntConfigFile(path string) (bool, error)

Returns true if the given path corresponds to file that could be a Terragrunt config file. A file could be a Terragrunt config file if:

1. The file exists 2. It is a .terragrunt file, which is the old Terragrunt-specific file format 3. The file contains HCL contents with a terragrunt = { ... } block

func ResolveTerragruntConfigString added in v0.4.0

func ResolveTerragruntConfigString(terragruntConfigString string, include *IncludeConfig, terragruntOptions *options.TerragruntOptions) (resolved string, finalErr error)

Given a string value from a Terragrunt configuration, parse the string, resolve any calls to helper functions using the syntax ${...}, and return the final value.

Types

type CheckedTooManyParentFolders added in v0.4.0

type CheckedTooManyParentFolders string

func (CheckedTooManyParentFolders) Error added in v0.4.0

func (err CheckedTooManyParentFolders) Error() string

type CouldNotResolveTerragruntConfigInFile added in v0.10.0

type CouldNotResolveTerragruntConfigInFile string

func (CouldNotResolveTerragruntConfigInFile) Error added in v0.10.0

type EnvVar added in v0.9.1

type EnvVar struct {
	Name         string
	DefaultValue string
}

type IncludeConfig added in v0.4.0

type IncludeConfig struct {
	Path string `hcl:"path"`
}

IncludeConfig represents the configuration settings for a parent Terragrunt configuration file that you can "include" in a child Terragrunt configuration file

type IncludedConfigMissingPath added in v0.4.0

type IncludedConfigMissingPath string

func (IncludedConfigMissingPath) Error added in v0.4.0

func (err IncludedConfigMissingPath) Error() string

type InvalidFunctionParameters added in v0.9.1

type InvalidFunctionParameters string

func (InvalidFunctionParameters) Error added in v0.9.1

func (err InvalidFunctionParameters) Error() string

type InvalidInterpolationSyntax added in v0.4.0

type InvalidInterpolationSyntax string

func (InvalidInterpolationSyntax) Error added in v0.4.0

func (err InvalidInterpolationSyntax) Error() string

type LockConfig added in v0.1.0

type LockConfig map[interface{}]interface{}

Older versions of Terraform did not support locking, so Terragrunt offered locking as a feature. As of version 0.9.0, Terraform supports locking natively, so this feature was removed from Terragrunt. However, we keep around the LockConfig so we can log a warning for Terragrunt users who are still trying to use it.

type ModuleDependencies added in v0.6.0

type ModuleDependencies struct {
	Paths []string `hcl:"paths"`
}

ModuleDependencies represents the paths to other Terraform modules that must be applied before the current module can be applied

func (*ModuleDependencies) String added in v0.9.4

func (deps *ModuleDependencies) String() string

type ParentTerragruntConfigNotFound added in v0.4.0

type ParentTerragruntConfigNotFound string

func (ParentTerragruntConfigNotFound) Error added in v0.4.0

type TerraformConfig added in v0.9.4

type TerraformConfig struct {
	ExtraArgs []TerraformExtraArguments `hcl:"extra_arguments"`
	Source    string                    `hcl:"source"`
}

TerraformConfig specifies where to find the Terraform configuration files

func (*TerraformConfig) String added in v0.9.4

func (conf *TerraformConfig) String() string

type TerraformExtraArguments added in v0.10.2

type TerraformExtraArguments struct {
	Name             string   `hcl:",key"`
	Arguments        []string `hcl:"arguments,omitempty"`
	RequiredVarFiles []string `hcl:"required_var_files,omitempty"`
	OptionalVarFiles []string `hcl:"optional_var_files,omitempty"`
	Commands         []string `hcl:"commands,omitempty"`
}

TerraformExtraArguments sets a list of arguments to pass to Terraform if command fits any in the `Commands` list

func (*TerraformExtraArguments) String added in v0.10.2

func (conf *TerraformExtraArguments) String() string

type TerragruntConfig

type TerragruntConfig struct {
	Terraform    *TerraformConfig
	RemoteState  *remote.RemoteState
	Dependencies *ModuleDependencies
}

TerragruntConfig represents a parsed and expanded configuration

func ParseConfigFile added in v0.6.0

func ParseConfigFile(configPath string, terragruntOptions *options.TerragruntOptions, include *IncludeConfig) (*TerragruntConfig, error)

Parse the Terragrunt config file at the given path. If the include parameter is not nil, then treat this as a config included in some other config file when resolving relative paths.

func ReadTerragruntConfig

func ReadTerragruntConfig(terragruntOptions *options.TerragruntOptions) (*TerragruntConfig, error)

Read the Terragrunt config file from its default location

func (*TerragruntConfig) String added in v0.9.4

func (conf *TerragruntConfig) String() string

type TooManyLevelsOfInheritance added in v0.4.0

type TooManyLevelsOfInheritance struct {
	ConfigPath             string
	FirstLevelIncludePath  string
	SecondLevelIncludePath string
}

func (TooManyLevelsOfInheritance) Error added in v0.4.0

func (err TooManyLevelsOfInheritance) Error() string

type UnknownHelperFunction added in v0.4.0

type UnknownHelperFunction string

func (UnknownHelperFunction) Error added in v0.4.0

func (err UnknownHelperFunction) Error() string

Jump to

Keyboard shortcuts

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