Documentation
¶
Index ¶
Constants ¶
View Source
const ( SourceTypeLocal = "local" SourceTypeRegistry = "registry" SourceTypeGithub = "github" SourceTypeGit = "git" SourceTypeHttp = "http" SourceTypeS3 = "s3" SourceTypeGCS = "gcs" SourceTypeMercurial = "mercurial" )
View Source
const (
HclExtension string = ".hcl"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MatchingRule ¶
type MatchingRule struct {
// `path` specifies a terragrunt manifest path pattern, the pattern requires to match all of name, not just a substring.
Path string
/*
`modules` specifies a map of modules, the key is module url as seen in the different terragrunt manifests,
the value is an optional semver version constraint.
examples:
“`
- providers:
# Ignore modules update for a specific registry
tfr://registry.opentofu.org:
# Ignore modules updates for a very specific module
tfr://terraform-aws-modules/rdss/aws:
registry.terraform.io/hashicorp/aws:
# Ignore module updates for this version
git@github.com:hashicorp/exampleLongNameForSorting.git: "1.x"
“`
*/
Modules map[string]string
}
MatchingRule allows to specifies rules to identify manifest
type MatchingRules ¶
type MatchingRules []MatchingRule
type Spec ¶
type Spec struct {
// `rootdir` defines the root directory from where looking for terragrunt configuration
RootDir string `yaml:",omitempty"`
// `ignore` specifies rule to ignore `.terraform.lock.hcl` update.
Ignore MatchingRules `yaml:",omitempty"`
// `only` specify required rule to restrict `.terraform.lock.hcl` update.
Only MatchingRules `yaml:",omitempty"`
/*
`versionfilter` provides parameters to specify the version pattern to use when generating manifest.
kind - semver
versionfilter of kind `semver` uses semantic versioning as version filtering
pattern accepts one of:
`patch` - patch only update patch version
`minor` - minor only update minor version
`major` - major only update major versions
`a version constraint` such as `>= 1.0.0`
kind - regex
versionfilter of kind `regex` uses regular expression as version filtering
pattern accepts a valid regular expression
example:
“`
versionfilter:
kind: semver
pattern: minor
“`
and its type like regex, semver, or just latest.
*/
VersionFilter version.Filter `yaml:",omitempty"`
}
Spec defines the Terraform parameters.
type Terragrunt ¶
type Terragrunt struct {
// contains filtered or unexported fields
}
Terragrunt struct holds all information needed to generate terragrunt manifest.
func New ¶
func New(spec interface{}, rootDir, scmID, actionID string) (Terragrunt, error)
New return a new valid Terragrunt object.
func (Terragrunt) DiscoverManifests ¶
func (t Terragrunt) DiscoverManifests() ([][]byte, error)
Click to show internal directories.
Click to hide internal directories.