Documentation ¶
Overview ¶
Package raw contains the golang representations of the YAML elements supported in atlantis.yaml. The structs here represent the exact data that comes from the file before it is parsed/validated further.
Index ¶
Constants ¶
const ( DefaultWorkspace = "default" ApprovedApplyRequirement = "approved" MergeableApplyRequirement = "mergeable" )
const ( ExtraArgsKey = "extra_args" NameArgKey = "name" CommandArgKey = "command" ValueArgKey = "value" RunStepName = "run" PlanStepName = "plan" ApplyStepName = "apply" InitStepName = "init" EnvStepName = "env" )
const DefaultAutomerge = false
DefaultAutomerge is the default setting for automerge.
const DefaultParallelApply = false
DefaultParallelApply is the default setting for parallel apply
const DefaultParallelPlan = false
DefaultParallelPlan is the default setting for parallel plan
Variables ¶
var DefaultAutoPlanWhenModified = []string{"**/*.tf*", "**/terragrunt.hcl"}
DefaultAutoPlanWhenModified is the default element in the when_modified list if none is defined.
Functions ¶
func DefaultAutoPlan ¶
DefaultAutoPlan returns the default autoplan config.
Types ¶
type Autoplan ¶
type GlobalCfg ¶ added in v0.7.0
type GlobalCfg struct { Repos []Repo `yaml:"repos" json:"repos"` Workflows map[string]Workflow `yaml:"workflows" json:"workflows"` }
GlobalCfg is the raw schema for server-side repo config.
type Project ¶
type Project struct { Name *string `yaml:"name,omitempty"` Dir *string `yaml:"dir,omitempty"` Workspace *string `yaml:"workspace,omitempty"` Workflow *string `yaml:"workflow,omitempty"` TerraformVersion *string `yaml:"terraform_version,omitempty"` Autoplan *Autoplan `yaml:"autoplan,omitempty"` ApplyRequirements []string `yaml:"apply_requirements,omitempty"` }
type Repo ¶ added in v0.7.0
type Repo struct { ID string `yaml:"id" json:"id"` ApplyRequirements []string `yaml:"apply_requirements" json:"apply_requirements"` Workflow *string `yaml:"workflow,omitempty" json:"workflow,omitempty"` AllowedOverrides []string `yaml:"allowed_overrides" json:"allowed_overrides"` AllowCustomWorkflows *bool `yaml:"allow_custom_workflows,omitempty" json:"allow_custom_workflows,omitempty"` }
Repo is the raw schema for repos in the server-side repo config.
func (Repo) HasRegexID ¶ added in v0.7.0
HasRegexID returns true if r is configured with a regex id instead of an exact match id.
type RepoCfg ¶ added in v0.7.0
type RepoCfg struct { Version *int `yaml:"version,omitempty"` Projects []Project `yaml:"projects,omitempty"` Workflows map[string]Workflow `yaml:"workflows,omitempty"` Automerge *bool `yaml:"automerge,omitempty"` ParallelApply *bool `yaml:"parallel_apply,omitempty"` ParallelPlan *bool `yaml:"parallel_plan,omitempty"` }
RepoCfg is the raw schema for repo-level atlantis.yaml config.
type Step ¶
type Step struct { // Key will be set in case #1 and #3 above to the key. In case #2, there // could be multiple keys (since the element is a map) so we don't set Key. Key *string // Env will be set in case #2 above. Env map[string]map[string]string // Map will be set in case #3 above. Map map[string]map[string][]string // StringVal will be set in case #4 above. StringVal map[string]string }
Step represents a single action/command to perform. In YAML, it can be set as 1. A single string for a built-in command:
- init
- plan
2. A map for an env step with name and command or value
- env: name: test command: echo 312 value: value
3. A map for a built-in command and extra_args:
- plan: extra_args: [-var-file=staging.tfvars]
4. A map for a custom run command:
- run: my custom command
Here we parse step in the most generic fashion possible. See fields for more details.