cmd

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2023 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	VERSION string
)

Functions

func Execute

func Execute(version string)

Execute adds all child commands to the root command and sets flags appropriately. This is called by main.main(). It only needs to happen once to the rootCmd.

func FindRootModulesInPath

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

func RunWithFlags

func RunWithFlags(filename string, args []string) ([]byte, error)

Runs a set of arguments, returning the output

Types

type AtlantisConfig

type AtlantisConfig struct {
	// Version of the config syntax
	Version int `json:"version"`

	// If Atlantis should merge after finishing `atlantis apply`
	AutoMerge bool `json:"automerge"`

	// If Atlantis should allow plans to occur in parallel
	ParallelPlan bool `json:"parallel_plan"`

	// If Atlantis should allow applies to occur in parallel
	ParallelApply bool `json:"parallel_apply"`

	// The project settings
	Projects []AtlantisProject `json:"projects,omitempty"`

	// Workflows, which are not managed by this library other than
	// the fact that this library preserves any existing workflows
	Workflows interface{} `json:"workflows,omitempty"`
}

Represents an entire config file

type AtlantisProject

type AtlantisProject struct {
	// The directory with the terragrunt.hcl file
	Dir string `json:"dir"`

	// Define workflow name
	Workflow string `json:"workflow,omitempty"`

	// Define workspace name
	Workspace string `json:"workspace,omitempty"`

	// Define project name
	Name string `json:"name,omitempty"`

	// Autoplan settings for which plans affect other plans
	Autoplan AutoplanConfig `json:"autoplan"`

	// The terraform version to use for this project
	TerraformVersion string `json:"terraform_version,omitempty"`

	// We only want to output `apply_requirements` if explicitly stated in a local value
	ApplyRequirements *[]string `json:"apply_requirements,omitempty"`

	// Atlantis use ExecutionOrderGroup for sort projects before applying/planning
	ExecutionOrderGroup int `json:"execution_order_group,omitempty"`
}

Represents an Atlantis Project directory

type AutoplanConfig

type AutoplanConfig struct {
	// Relative paths from this modules directory to modules it depends on
	WhenModified []string `json:"when_modified"`

	// If autoplan should be enabled for this dir
	Enabled bool `json:"enabled"`
}

Autoplan settings for which plans affect other plans

type ResolvedLocals

type ResolvedLocals struct {
	// The Atlantis workflow to use for some project
	AtlantisWorkflow string

	// Apply requirements to override the global `--apply-requirements` flag
	ApplyRequirements []string

	// Extra dependencies that can be hardcoded in config
	ExtraAtlantisDependencies []string

	// If set, a single module will have autoplan turned to this setting
	AutoPlan *bool

	// If set to true, the module will not be included in the output
	Skip *bool

	// Terraform version to use just for this project
	TerraformVersion string

	ExecutionOrderGroup int
	// contains filtered or unexported fields
}

ResolvedLocals are the parsed result of local values this module cares about

Jump to

Keyboard shortcuts

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