Documentation
¶
Overview ¶
Package exec is a generated GoMock package.
Package exec is a generated GoMock package.
Package exec is a generated GoMock package.
Package exec is a generated GoMock package.
Index ¶
- Constants
- Variables
- func BuildAtlantisProjectNameFromComponentConfig(atmosConfig *schema.AtmosConfiguration, ...) (string, error)
- func BuildComponentPath(atmosConfig *schema.AtmosConfiguration, componentSectionMap *map[string]any, ...) string
- func BuildDependentStackNameFromDependsOn(currentComponentName string, currentStackName string, ...) (string, error)
- func BuildDependentStackNameFromDependsOnLegacy(dependsOn string, allStackNames []string, currentStackName string, ...) (string, error)
- func BuildSpaceliftStackName(spaceliftSettings map[string]any, context schema.Context, contextPrefix string) (string, string, error)
- func BuildSpaceliftStackNameFromComponentConfig(atmosConfig *schema.AtmosConfiguration, ...) (string, error)
- func BuildSpaceliftStackNames(stacks map[string]any, stackNamePattern string) ([]string, error)
- func BuildTerraformWorkspace(atmosConfig *schema.AtmosConfiguration, ...) (string, error)
- func ComponentOrMixinsCopy(sourceFile, finalTarget string) error
- func DeletePathTerraform(fullPath string, objectName string) error
- func ExecuteAtlantisGenerateRepoConfig(atmosConfig *schema.AtmosConfiguration, outputPath string, ...) error
- func ExecuteAtlantisGenerateRepoConfigAffectedOnly(atmosConfig *schema.AtmosConfiguration, outputPath string, ...) error
- func ExecuteAtlantisGenerateRepoConfigCmd(cmd *cobra.Command, args []string) error
- func ExecuteAtmosCmd() error
- func ExecuteAtmosVendorInternal(params *executeVendorOptions) error
- func ExecuteAwsEksUpdateKubeconfig(kubeconfigContext schema.AwsEksUpdateKubeconfigContext) error
- func ExecuteAwsEksUpdateKubeconfigCommand(cmd *cobra.Command, args []string) error
- func ExecuteComponentVendorInternal(atmosConfig *schema.AtmosConfiguration, ...) error
- func ExecuteDescribeAffectedWithTargetRefCheckout(atmosConfig *schema.AtmosConfiguration, ref string, sha string, ...) ([]schema.Affected, *plumbing.Reference, *plumbing.Reference, string, error)
- func ExecuteDescribeAffectedWithTargetRefClone(atmosConfig *schema.AtmosConfiguration, ref string, sha string, ...) ([]schema.Affected, *plumbing.Reference, *plumbing.Reference, string, error)
- func ExecuteDescribeAffectedWithTargetRepoPath(atmosConfig *schema.AtmosConfiguration, targetRefPath string, ...) ([]schema.Affected, *plumbing.Reference, *plumbing.Reference, string, error)
- func ExecuteDescribeComponent(component string, stack string, processTemplates bool, ...) (map[string]any, error)
- func ExecuteDescribeDependents(atmosConfig *schema.AtmosConfiguration, component string, stack string, ...) ([]schema.Dependent, error)
- func ExecuteDescribeStacks(atmosConfig *schema.AtmosConfiguration, filterByStack string, ...) (map[string]any, error)
- func ExecuteDescribeWorkflows(atmosConfig schema.AtmosConfiguration) ([]schema.DescribeWorkflowsItem, map[string][]string, ...)
- func ExecuteDocsGenerateCmd(cmd *cobra.Command, args []string) error
- func ExecuteHelmfile(info schema.ConfigAndStacksInfo) error
- func ExecuteHelmfileCmd(cmd *cobra.Command, args []string, additionalArgsAndFlags []string) error
- func ExecuteHelmfileGenerateVarfileCmd(cmd *cobra.Command, args []string) error
- func ExecuteInstall(installer pkgVendor, dryRun bool, atmosConfig *schema.AtmosConfiguration) tea.Cmd
- func ExecutePacker(info *schema.ConfigAndStacksInfo, packerFlags *PackerFlags) error
- func ExecutePackerOutput(info *schema.ConfigAndStacksInfo, packerFlags *PackerFlags) (any, error)
- func ExecuteProLockCommand(cmd *cobra.Command, args []string) error
- func ExecuteProUnlockCommand(cmd *cobra.Command, args []string) error
- func ExecuteShell(command string, name string, dir string, env []string, dryRun bool) error
- func ExecuteShellCommand(atmosConfig schema.AtmosConfiguration, command string, args []string, ...) error
- func ExecuteStackVendorInternal(stack string, dryRun bool) error
- func ExecuteTerraform(info schema.ConfigAndStacksInfo) error
- func ExecuteTerraformAffected(args *DescribeAffectedCmdArgs, info *schema.ConfigAndStacksInfo) error
- func ExecuteTerraformGenerateBackendCmd(cmd *cobra.Command, args []string) error
- func ExecuteTerraformGenerateBackends(atmosConfig *schema.AtmosConfiguration, fileTemplate string, format string, ...) error
- func ExecuteTerraformGenerateBackendsCmd(cmd *cobra.Command, args []string) error
- func ExecuteTerraformGeneratePlanfile(options *PlanfileOptions, info *schema.ConfigAndStacksInfo) error
- func ExecuteTerraformGeneratePlanfileCmd(cmd *cobra.Command, args []string) error
- func ExecuteTerraformGenerateVarfileCmd(cmd *cobra.Command, args []string) error
- func ExecuteTerraformGenerateVarfiles(atmosConfig *schema.AtmosConfiguration, fileTemplate string, format string, ...) error
- func ExecuteTerraformGenerateVarfilesCmd(cmd *cobra.Command, args []string) error
- func ExecuteTerraformQuery(info *schema.ConfigAndStacksInfo) error
- func ExecuteValidateComponent(atmosConfig *schema.AtmosConfiguration, ...) (bool, error)
- func ExecuteValidateComponentCmd(cmd *cobra.Command, args []string) (string, string, error)
- func ExecuteValidateStacksCmd(cmd *cobra.Command, args []string) error
- func ExecuteVendorDiffCmd(cmd *cobra.Command, args []string) error
- func ExecuteVendorPullCmd(cmd *cobra.Command, args []string) error
- func ExecuteVendorPullCommand(cmd *cobra.Command, args []string) error
- func ExecuteWorkflow(atmosConfig schema.AtmosConfiguration, workflow string, workflowPath string, ...) error
- func ExecuteWorkflowCmd(cmd *cobra.Command, args []string) error
- func ExecuteWorkflowUI(atmosConfig schema.AtmosConfiguration) (string, string, string, error)
- func FilterAbstractComponents(componentsMap map[string]any) []string
- func FilterEmptySections(data map[string]any, includeEmpty bool) map[string]any
- func FindComponentDependencies(currentStack string, sources schema.ConfigSources) ([]string, []string, error)
- func FindComponentDependenciesLegacy(stack string, componentType string, component string, baseComponents []string, ...) ([]string, error)
- func FindComponentStacks(componentType string, component string, baseComponent string, ...) ([]string, error)
- func FindComponentsDerivedFromBaseComponents(stack string, allComponents map[string]any, baseComponents []string) ([]string, error)
- func FindStacksMap(atmosConfig *schema.AtmosConfiguration, ignoreMissingFiles bool) (map[string]any, map[string]map[string]any, error)
- func FindValidationSection(componentSection map[string]any) (schema.Validation, error)
- func FormatList(items []string) string
- func FuncMap(atmosConfig *schema.AtmosConfiguration, ...) template.FuncMap
- func GetComponentRemoteStateBackendStaticType(sections *map[string]any) map[string]any
- func GetFileContent(filePath string) (string, error)
- func GetIncludeEmptySetting(atmosConfig *schema.AtmosConfiguration) bool
- func GetPackerManifestFromVars(vars *schema.AtmosSectionMapType) (string, error)
- func GetPackerTemplateFromSettings(settings *schema.AtmosSectionMapType) (string, error)
- func GetStackNamePattern(atmosConfig *schema.AtmosConfiguration) string
- func GetStackNameTemplate(atmosConfig *schema.AtmosConfiguration) string
- func GetStaticRemoteStateOutput(atmosConfig *schema.AtmosConfiguration, component string, stack string, ...) any
- func GetTerraformEnvCliArgs() []string
- func GetTerraformEnvCliVars() (map[string]any, error)
- func GetTerraformOutput(atmosConfig *schema.AtmosConfiguration, stack string, component string, ...) any
- func GetTerraformState(atmosConfig *schema.AtmosConfiguration, yamlFunc string, stack string, ...) (any, error)
- func IsComponentAbstract(metadataSection map[string]any) bool
- func IsComponentEnabled(varsSection map[string]any) bool
- func IsGolangTemplate(atmosConfig *schema.AtmosConfiguration, str string) (bool, error)
- func IsKnownWorkflowError(err error) bool
- func IsValidDataDir(tfDataDir string) error
- func NewAtmosValidatorExecutor(atmosConfig *schema.AtmosConfiguration) *atmosValidatorExecutor
- func NewDescribeConfig(atmosConfig *schema.AtmosConfiguration) *describeConfigExec
- func NewSpinner(message string) *tea.Program
- func NewVersionExec(atmosConfig *schema.AtmosConfiguration) *versionExec
- func ProcessBaseComponentConfig(atmosConfig *schema.AtmosConfiguration, ...) error
- func ProcessCommandLineArgs(componentType string, cmd *cobra.Command, args []string, ...) (schema.ConfigAndStacksInfo, error)
- func ProcessComponentConfig(configAndStacksInfo *schema.ConfigAndStacksInfo, stack string, ...) error
- func ProcessComponentMetadata(component string, componentSection map[string]any) (map[string]any, string, bool, bool, bool)
- func ProcessConfigSources(configAndStacksInfo schema.ConfigAndStacksInfo, ...) (schema.ConfigSources, error)
- func ProcessCustomYamlTags(atmosConfig *schema.AtmosConfiguration, input schema.AtmosSectionMapType, ...) (schema.AtmosSectionMapType, error)
- func ProcessImportSection(stackMap map[string]any, filePath string) ([]schema.StackImport, error)
- func ProcessStackConfig(atmosConfig *schema.AtmosConfiguration, stacksBasePath string, ...) (map[string]any, error)
- func ProcessStacks(atmosConfig *schema.AtmosConfiguration, ...) (schema.ConfigAndStacksInfo, error)
- func ProcessTmpl(atmosConfig *schema.AtmosConfiguration, tmplName string, tmplValue string, ...) (string, error)
- func ProcessTmplWithDatasources(atmosConfig *schema.AtmosConfiguration, ...) (string, error)
- func ProcessTmplWithDatasourcesGomplate(atmosConfig *schema.AtmosConfiguration, tmplName string, tmplValue string, ...) (string, error)
- func ProcessYAMLConfigFile(atmosConfig *schema.AtmosConfiguration, basePath string, filePath string, ...) (map[string]any, map[string]map[string]any, map[string]any, map[string]any, ...)
- func ProcessYAMLConfigFileWithContext(atmosConfig *schema.AtmosConfiguration, basePath string, filePath string, ...) (map[string]any, map[string]map[string]any, map[string]any, map[string]any, ...)
- func ProcessYAMLConfigFiles(atmosConfig *schema.AtmosConfiguration, stacksBasePath string, ...) ([]string, map[string]any, map[string]map[string]any, error)
- func ReadAndProcessComponentVendorConfigFile(atmosConfig *schema.AtmosConfiguration, component string, componentType string) (schema.VendorComponentConfig, string, error)
- func ReadAndProcessVendorConfigFile(atmosConfig *schema.AtmosConfiguration, vendorConfigFile string, ...) (schema.AtmosVendorConfig, bool, string, error)
- func RunSpinner(p *tea.Program, spinnerChan chan struct{}, message string)
- func SanitizeFileName(uri string) string
- func SetDescribeAffectedFlagValueInCliArgs(flags *pflag.FlagSet, describe *DescribeAffectedCmdArgs)
- func StopSpinner(p *tea.Program, spinnerChan chan struct{})
- func TerraformPlanDiff(atmosConfig *schema.AtmosConfiguration, info *schema.ConfigAndStacksInfo) error
- func ValidateComponent(atmosConfig *schema.AtmosConfiguration, componentName string, ...) (bool, error)
- func ValidateStacks(atmosConfig *schema.AtmosConfiguration) error
- func ValidateWithCue(data any, schemaName string, schemaText string) (bool, error)
- func ValidateWithJsonSchema(data any, schemaName string, schemaText string) (bool, error)
- func ValidateWithOpa(data any, schemaPath string, modulePaths []string, timeoutSeconds int) (bool, error)
- func ValidateWithOpaLegacy(data any, schemaName string, schemaText string, timeoutSeconds int) (bool, error)
- type AtmosFuncs
- type ComponentSkipFunc
- type CopyContext
- type DescribeAffectedCmdArgs
- type DescribeAffectedExec
- type DescribeAffectedExecCreator
- type DescribeComponentExec
- type DescribeComponentParams
- type DescribeConfigFormatError
- type DescribeDependentsExec
- type DescribeDependentsExecProps
- type DescribeStacksArgs
- type DescribeStacksExec
- type DescribeWorkflowsArgs
- type DescribeWorkflowsExec
- type Directory
- func CollectComponentObjects(terraformDirAbsolutePath string, componentPath string, patterns []string) ([]Directory, error)
- func CollectComponentsDirectoryObjects(terraformDirAbsolutePath string, allComponentsRelativePaths []string, ...) ([]Directory, error)
- func CollectDirectoryObjects(basePath string, patterns []string) ([]Directory, error)
- type ErrInvalidPattern
- type Formatter
- type MockDescribeAffectedExec
- type MockDescribeAffectedExecMockRecorder
- type MockDescribeDependentsExec
- type MockDescribeDependentsExecMockRecorder
- type MockDescribeStacksExec
- type MockDescribeStacksExecMockRecorder
- type MockDescribeWorkflowsExec
- type MockDescribeWorkflowsExecMockRecorder
- type ObjectInfo
- type PackerFlags
- type PlanFileOptions
- type PlanfileOptions
- type PrefixCopyContext
- type ProLockCmdArgs
- type ProLockUnlockCmdArgs
- type ProUnlockCmdArgs
- type SectionFilter
- type TemplateRenderer
- type VendorFlags
- type Version
Constants ¶
const (
DefaultFileMode os.FileMode = 0o644
)
const (
DefaultIncludeEmpty = true
)
Variables ¶
var ( // Error constants. ErrInvalidHooksSection = errors.New("invalid 'hooks' section in the file") ErrInvalidTerraformHooksSection = errors.New("invalid 'terraform.hooks' section in the file") )
var ( ErrHTTPBackendWorkspaces = errors.New("workspaces are not supported for the HTTP backend") ErrMissingStack = errors.New("stack must be specified") ErrInvalidTerraformComponent = errors.New("invalid Terraform component") ErrAbstractComponent = errors.New("component is abstract") ErrLockedComponent = errors.New("component is locked") ErrComponentNotValid = errors.New("component is invalid") ErrNoTty = errors.New("no TTY attached") )
ErrHTTPBackendWorkspaces is returned when attempting to use workspace commands with an HTTP backend.
var ( ErrParseStacks = errors.New("could not parse stacks") ErrParseComponents = errors.New("could not parse components") ErrParseTerraformComponents = errors.New("could not parse Terraform components") ErrParseComponentsAttributes = errors.New("could not parse component attributes") ErrDescribeStack = errors.New("error describe stacks") ErrEmptyPath = errors.New("path cannot be empty") ErrPathNotExist = errors.New("path not exist") ErrFileStat = errors.New("error get file stat") ErrMatchPattern = errors.New("error matching pattern") ErrReadDir = errors.New("error reading directory") ErrFailedFoundStack = errors.New("failed to find stack folders") ErrCollectFiles = errors.New("failed to collect files") ErrEmptyEnvDir = errors.New("ENV TF_DATA_DIR is empty") ErrResolveEnvDir = errors.New("error resolving TF_DATA_DIR path") ErrRefusingToDeleteDir = errors.New("refusing to delete root directory") ErrRefusingToDelete = errors.New("refusing to delete directory containing") ErrRootPath = errors.New("root path cannot be empty") )
var ( ErrInvalidFormat = errors.New("invalid format") ErrCreatingTempDirectory = errors.New("error creating temporary directory") ErrCreatingIntermediateSubdirectories = errors.New("error creating intermediate subdirectories") ErrGettingJsonForPlanfile = errors.New("error getting JSON for planfile") ErrConvertingJsonToGoType = errors.New("error converting JSON to Go type") ErrNoComponent = errors.New("no component specified") )
var ( ErrVendorConfigNotExist = errors.New("the '--everything' flag is set, but vendor config file does not exist") ErrExecuteVendorDiffCmd = errors.New("'atmos vendor diff' is not implemented yet") ErrValidateComponentFlag = errors.New("either '--component' or '--tags' flag can be provided, but not both") ErrValidateComponentStackFlag = errors.New("either '--component' or '--stack' flag can be provided, but not both") ErrValidateEverythingFlag = errors.New("'--everything' flag cannot be combined with '--component', '--stack', or '--tags' flags") ErrMissingComponent = errors.New("to vendor a component, the '--component' (shorthand '-c') flag needs to be specified.\n" + "Example: atmos vendor pull -c <component>") )
var ( ErrMissingMixinURI = errors.New("'uri' must be specified for each 'mixin' in the 'component.yaml' file") ErrMissingMixinFilename = errors.New("'filename' must be specified for each 'mixin' in the 'component.yaml' file") ErrUnsupportedComponentType = errors.New("'%s' is not supported type. Valid types are 'terraform' and 'helmfile'") ErrMixinEmpty = errors.New("mixin URI cannot be empty") ErrMixinNotImplemented = errors.New("local mixin installation not implemented") ErrStackPullNotSupported = errors.New("command 'atmos vendor pull --stack <stack>' is not supported yet") ErrComponentConfigFileNotFound = errors.New("component vendoring config file does not exist in the folder") ErrFolderNotFound = errors.New("folder does not exist") ErrInvalidComponentKind = errors.New("invalid 'kind' in the component vendoring config file. Supported kinds: 'ComponentVendorConfig'") ErrUriMustSpecified = errors.New("'uri' must be specified in 'source.uri' in the component vendoring config file") )
var ( ErrVendorComponents = errors.New("failed to vendor components") ErrSourceMissing = errors.New("'source' must be specified in 'sources' in the vendor config file") ErrTargetsMissing = errors.New("'targets' must be specified for the source in the vendor config file") ErrVendorConfigSelfImport = errors.New("vendor config file imports itself in 'spec.imports'") ErrMissingVendorConfigDefinition = errors.New("either 'spec.sources' or 'spec.imports' (or both) must be defined in the vendor config file") ErrVendoringNotConfigured = errors.New("Vendoring is not configured. To set up vendoring, please see https://atmos.tools/core-concepts/vendor/") ErrPermissionDenied = errors.New("Permission denied when accessing") ErrEmptySources = errors.New("'spec.sources' is empty in the vendor config file and the imports") ErrNoComponentsWithTags = errors.New("there are no components in the vendor config file") ErrNoYAMLConfigFiles = errors.New("no YAML configuration files found in directory") ErrDuplicateComponents = errors.New("duplicate component names") ErrDuplicateImport = errors.New("Duplicate import") ErrDuplicateComponentsFound = errors.New("duplicate component") ErrComponentNotDefined = errors.New("the flag '--component' is passed, but the component is not defined in any of the 'sources' in the vendor config file and the imports") )
var ( WorkflowErrTitle = "Workflow Error" ErrWorkflowNoSteps = errors.New("workflow has no steps defined") ErrInvalidWorkflowStepType = errors.New("invalid workflow step type") ErrInvalidFromStep = errors.New("invalid from-step flag") ErrWorkflowStepFailed = errors.New("workflow step execution failed") ErrWorkflowNoWorkflow = errors.New("no workflow found") ErrWorkflowFileNotFound = errors.New("workflow file not found") ErrInvalidWorkflowManifest = errors.New("invalid workflow manifest") KnownWorkflowErrors = []error{ ErrWorkflowNoSteps, ErrInvalidWorkflowStepType, ErrInvalidFromStep, ErrWorkflowStepFailed, ErrWorkflowNoWorkflow, ErrWorkflowFileNotFound, ErrInvalidWorkflowManifest, } )
Static error definitions.
var ( ErrStoreNotFound = errors.New("store not found") ErrGetKeyFailed = errors.New("failed to get key from store") ErrInvalidPipeParams = errors.New("invalid parameters after pipe") ErrInvalidPipeIdentifier = errors.New("invalid identifier after pipe") )
Common errors for store YAML functions.
var ErrInvalidFilePath = errors.New("invalid file path")
var ErrInvalidYAML = fmt.Errorf("invalid YAML")
var ( // ErrNoJSONOutput is returned when no JSON output is found in terraform show output. ErrNoJSONOutput = errors.New("no JSON output found in terraform show output") )
Static errors.
var ErrNoLayers = errors.New("the OCI image does not have any layers")
var ErrRelPath = errors.New("error determining relative path")
var ErrRepoPathConflict = errors.New("if the '--repo-path' flag is specified, the '--ref', '--sha', '--ssh-key' and '--ssh-key-password' flags can't be used")
var ErrTTYNotSupported = fmt.Errorf("tty not supported for this command")
var RemoteRepoIsNotGitRepoError = errors.New("the target remote repo is not a Git repository. Check that it was initialized and has '.git' folder")
var StderrLogger = func() *log.AtmosLogger { l := log.New() l.SetOutput(os.Stderr) return l }()
Dedicated logger for stderr to keep stdout clean of detailed messaging, e.g. for files vendoring.
Functions ¶
func BuildAtlantisProjectNameFromComponentConfig ¶ added in v1.31.0
func BuildAtlantisProjectNameFromComponentConfig( atmosConfig *schema.AtmosConfiguration, configAndStacksInfo schema.ConfigAndStacksInfo, ) (string, error)
BuildAtlantisProjectNameFromComponentConfig builds an Atlantis project name from the component config.
func BuildComponentPath ¶ added in v1.31.0
func BuildComponentPath( atmosConfig *schema.AtmosConfiguration, componentSectionMap *map[string]any, componentType string, ) string
BuildComponentPath builds component path (path to the component's physical location on disk).
func BuildDependentStackNameFromDependsOn ¶ added in v1.33.2
func BuildDependentStackNameFromDependsOn( currentComponentName string, currentStackName string, dependsOnComponentName string, dependsOnStackName string, allStackNames []string, ) (string, error)
BuildDependentStackNameFromDependsOn builds the dependent stack name from "settings.depends_on" config.
func BuildDependentStackNameFromDependsOnLegacy ¶ added in v1.50.0
func BuildDependentStackNameFromDependsOnLegacy( dependsOn string, allStackNames []string, currentStackName string, componentNamesInCurrentStack []string, currentComponentName string, ) (string, error)
BuildDependentStackNameFromDependsOnLegacy builds the dependent stack name from "settings.spacelift.depends_on" config.
func BuildSpaceliftStackName ¶ added in v1.24.0
func BuildSpaceliftStackName(spaceliftSettings map[string]any, context schema.Context, contextPrefix string) (string, string, error)
BuildSpaceliftStackName builds a Spacelift stack name from the provided context and stack name pattern.
func BuildSpaceliftStackNameFromComponentConfig ¶ added in v1.31.0
func BuildSpaceliftStackNameFromComponentConfig( atmosConfig *schema.AtmosConfiguration, configAndStacksInfo schema.ConfigAndStacksInfo, ) (string, error)
BuildSpaceliftStackNameFromComponentConfig builds Spacelift stack name from the component config.
func BuildSpaceliftStackNames ¶ added in v1.31.0
BuildSpaceliftStackNames builds Spacelift stack names.
func BuildTerraformWorkspace ¶ added in v1.4.8
func BuildTerraformWorkspace(atmosConfig *schema.AtmosConfiguration, configAndStacksInfo schema.ConfigAndStacksInfo) (string, error)
BuildTerraformWorkspace builds Terraform workspace.
func ComponentOrMixinsCopy ¶ added in v1.168.0
ComponentOrMixinsCopy covers 2 cases: file-to-folder and file-to-file copy.
func DeletePathTerraform ¶ added in v1.114.0
DeletePathTerraform deletes the specified file or folder with a checkmark or xmark.
func ExecuteAtlantisGenerateRepoConfig ¶ added in v1.5.0
func ExecuteAtlantisGenerateRepoConfig( atmosConfig *schema.AtmosConfiguration, outputPath string, configTemplateNameArg string, projectTemplateNameArg string, stacks []string, components []string, ) error
ExecuteAtlantisGenerateRepoConfig generates repository configuration for Atlantis.
func ExecuteAtlantisGenerateRepoConfigAffectedOnly ¶ added in v1.30.0
func ExecuteAtlantisGenerateRepoConfigAffectedOnly( atmosConfig *schema.AtmosConfiguration, outputPath string, configTemplateName string, projectTemplateName string, ref string, sha string, repoPath string, sshKeyPath string, sshKeyPassword string, cloneTargetRef bool, stack string, ) error
ExecuteAtlantisGenerateRepoConfigAffectedOnly generates repository configuration for Atlantis only for the affected components and stacks.
func ExecuteAtlantisGenerateRepoConfigCmd ¶ added in v1.5.0
ExecuteAtlantisGenerateRepoConfigCmd executes 'atlantis generate repo-config' command.
func ExecuteAtmosCmd ¶ added in v1.54.0
func ExecuteAtmosCmd() error
ExecuteAtmosCmd executes `atmos` command.
func ExecuteAtmosVendorInternal ¶ added in v1.47.0
func ExecuteAtmosVendorInternal(params *executeVendorOptions) error
ExecuteAtmosVendorInternal downloads the artifacts from the sources and writes them to the targets.
func ExecuteAwsEksUpdateKubeconfig ¶ added in v1.4.9
func ExecuteAwsEksUpdateKubeconfig(kubeconfigContext schema.AwsEksUpdateKubeconfigContext) error
ExecuteAwsEksUpdateKubeconfig executes 'aws eks update-kubeconfig'. https://docs.aws.amazon.com/cli/latest/reference/eks/update-kubeconfig.html
func ExecuteAwsEksUpdateKubeconfigCommand ¶ added in v1.4.9
func ExecuteComponentVendorInternal ¶ added in v1.47.0
func ExecuteComponentVendorInternal( atmosConfig *schema.AtmosConfiguration, vendorComponentSpec *schema.VendorComponentSpec, component string, componentPath string, dryRun bool, ) error
func ExecuteDescribeAffectedWithTargetRefCheckout ¶ added in v1.71.0
func ExecuteDescribeAffectedWithTargetRefCheckout( atmosConfig *schema.AtmosConfiguration, ref string, sha string, includeSpaceliftAdminStacks bool, includeSettings bool, stack string, processTemplates bool, processYamlFunctions bool, skip []string, excludeLocked bool, ) ([]schema.Affected, *plumbing.Reference, *plumbing.Reference, string, error)
ExecuteDescribeAffectedWithTargetRefCheckout checks out the target reference, processes stack configs, and returns a list of the affected Atmos components and stacks given two Git commits.
func ExecuteDescribeAffectedWithTargetRefClone ¶ added in v1.71.0
func ExecuteDescribeAffectedWithTargetRefClone( atmosConfig *schema.AtmosConfiguration, ref string, sha string, sshKeyPath string, sshKeyPassword string, includeSpaceliftAdminStacks bool, includeSettings bool, stack string, processTemplates bool, processYamlFunctions bool, skip []string, excludeLocked bool, ) ([]schema.Affected, *plumbing.Reference, *plumbing.Reference, string, error)
ExecuteDescribeAffectedWithTargetRefClone clones the remote reference, processes stack configs, and returns a list of the affected Atmos components and stacks given two Git commits.
func ExecuteDescribeAffectedWithTargetRepoPath ¶ added in v1.26.0
func ExecuteDescribeAffectedWithTargetRepoPath( atmosConfig *schema.AtmosConfiguration, targetRefPath string, includeSpaceliftAdminStacks bool, includeSettings bool, stack string, processTemplates bool, processYamlFunctions bool, skip []string, excludeLocked bool, ) ([]schema.Affected, *plumbing.Reference, *plumbing.Reference, string, error)
ExecuteDescribeAffectedWithTargetRepoPath uses `repo-path` to access the target repo, and processes stack configs and returns a list of the affected Atmos components and stacks given two Git commits.
func ExecuteDescribeComponent ¶
func ExecuteDescribeComponent( component string, stack string, processTemplates bool, processYamlFunctions bool, skip []string, ) (map[string]any, error)
ExecuteDescribeComponent describes component config.
func ExecuteDescribeDependents ¶ added in v1.33.2
func ExecuteDescribeDependents( atmosConfig *schema.AtmosConfiguration, component string, stack string, includeSettings bool, processTemplates bool, processYamlFunctions bool, skip []string, ) ([]schema.Dependent, error)
ExecuteDescribeDependents produces a list of Atmos components in Atmos stacks that depend on the provided Atmos component.
func ExecuteDescribeStacks ¶ added in v1.4.4
func ExecuteDescribeStacks( atmosConfig *schema.AtmosConfiguration, filterByStack string, components []string, componentTypes []string, sections []string, ignoreMissingFiles bool, processTemplates bool, processYamlFunctions bool, includeEmptyStacks bool, skip []string, ) (map[string]any, error)
ExecuteDescribeStacks processes stack manifests and returns the final map of stacks and components.
func ExecuteDescribeWorkflows ¶ added in v1.55.0
func ExecuteDescribeWorkflows( atmosConfig schema.AtmosConfiguration, ) ([]schema.DescribeWorkflowsItem, map[string][]string, map[string]schema.WorkflowManifest, error)
ExecuteDescribeWorkflows executes `atmos describe workflows` command.
func ExecuteDocsGenerateCmd ¶ added in v1.175.0
ExecuteDocsGenerateCmd implements the 'atmos docs generate <doc-type>' logic.
func ExecuteHelmfile ¶
func ExecuteHelmfile(info schema.ConfigAndStacksInfo) error
ExecuteHelmfile executes helmfile commands.
func ExecuteHelmfileCmd ¶ added in v1.11.0
ExecuteHelmfileCmd parses the provided arguments and flags and executes helmfile commands.
func ExecuteHelmfileGenerateVarfileCmd ¶ added in v1.11.0
ExecuteHelmfileGenerateVarfileCmd executes `helmfile generate varfile` command.
func ExecuteInstall ¶ added in v1.130.0
func ExecuteInstall(installer pkgVendor, dryRun bool, atmosConfig *schema.AtmosConfiguration) tea.Cmd
func ExecutePacker ¶ added in v1.186.0
func ExecutePacker( info *schema.ConfigAndStacksInfo, packerFlags *PackerFlags, ) error
ExecutePacker executes Packer commands.
func ExecutePackerOutput ¶ added in v1.186.0
func ExecutePackerOutput( info *schema.ConfigAndStacksInfo, packerFlags *PackerFlags, ) (any, error)
ExecutePackerOutput executes `atmos packer output` commands.
func ExecuteProLockCommand ¶ added in v1.87.0
ExecuteProLockCommand executes `atmos pro lock` command.
func ExecuteProUnlockCommand ¶ added in v1.87.0
ExecuteProUnlockCommand executes `atmos pro unlock` command.
func ExecuteShell ¶ added in v1.16.0
ExecuteShell runs a shell script.
func ExecuteShellCommand ¶ added in v1.4.9
func ExecuteShellCommand( atmosConfig schema.AtmosConfiguration, command string, args []string, dir string, env []string, dryRun bool, redirectStdError string, ) error
ExecuteShellCommand prints and executes the provided command with args and flags.
func ExecuteStackVendorInternal ¶ added in v1.47.0
ExecuteStackVendorInternal executes the command to vendor an Atmos stack. TODO: implement this.
func ExecuteTerraform ¶
func ExecuteTerraform(info schema.ConfigAndStacksInfo) error
ExecuteTerraform executes terraform commands.
func ExecuteTerraformAffected ¶ added in v1.181.0
func ExecuteTerraformAffected(args *DescribeAffectedCmdArgs, info *schema.ConfigAndStacksInfo) error
ExecuteTerraformAffected executes `atmos terraform <command> --affected`.
func ExecuteTerraformGenerateBackendCmd ¶ added in v1.11.0
ExecuteTerraformGenerateBackendCmd executes `terraform generate backend` command.
func ExecuteTerraformGenerateBackends ¶
func ExecuteTerraformGenerateBackends( atmosConfig *schema.AtmosConfiguration, fileTemplate string, format string, stacks []string, components []string, ) error
ExecuteTerraformGenerateBackends generates backend configs for all terraform components.
func ExecuteTerraformGenerateBackendsCmd ¶ added in v1.7.0
ExecuteTerraformGenerateBackendsCmd executes `terraform generate backends` command.
func ExecuteTerraformGeneratePlanfile ¶ added in v1.172.0
func ExecuteTerraformGeneratePlanfile( options *PlanfileOptions, info *schema.ConfigAndStacksInfo, ) error
ExecuteTerraformGeneratePlanfile executes `terraform generate planfile`.
func ExecuteTerraformGeneratePlanfileCmd ¶ added in v1.172.0
ExecuteTerraformGeneratePlanfileCmd executes `terraform generate planfile` command.
func ExecuteTerraformGenerateVarfileCmd ¶ added in v1.11.0
ExecuteTerraformGenerateVarfileCmd executes `terraform generate varfile` command.
func ExecuteTerraformGenerateVarfiles ¶ added in v1.5.0
func ExecuteTerraformGenerateVarfiles( atmosConfig *schema.AtmosConfiguration, fileTemplate string, format string, stacks []string, components []string, ) error
ExecuteTerraformGenerateVarfiles generates varfiles for all terraform components in all stacks.
func ExecuteTerraformGenerateVarfilesCmd ¶ added in v1.5.0
ExecuteTerraformGenerateVarfilesCmd executes `terraform generate varfiles` command.
func ExecuteTerraformQuery ¶ added in v1.181.0
func ExecuteTerraformQuery(info *schema.ConfigAndStacksInfo) error
ExecuteTerraformQuery executes `atmos terraform <command> --query <yq-expression --stack <stack>`.
func ExecuteValidateComponent ¶ added in v1.9.0
func ExecuteValidateComponent( atmosConfig *schema.AtmosConfiguration, configAndStacksInfo schema.ConfigAndStacksInfo, componentName string, stack string, schemaPath string, schemaType string, modulePaths []string, timeoutSeconds int, ) (bool, error)
ExecuteValidateComponent validates a component in a stack using JsonSchema or OPA schema documents.
func ExecuteValidateComponentCmd ¶ added in v1.9.0
ExecuteValidateComponentCmd executes `validate component` command.
func ExecuteValidateStacksCmd ¶ added in v1.11.0
ExecuteValidateStacksCmd executes `validate stacks` command.
func ExecuteVendorDiffCmd ¶ added in v1.11.0
ExecuteVendorDiffCmd executes `vendor diff` commands.
func ExecuteVendorPullCmd ¶ added in v1.11.0
ExecuteVendorPullCmd executes `vendor pull` commands.
func ExecuteVendorPullCommand ¶ added in v1.47.0
ExecuteVendorPullCommand executes `atmos vendor` commands.
func ExecuteWorkflow ¶ added in v1.4.0
func ExecuteWorkflow( atmosConfig schema.AtmosConfiguration, workflow string, workflowPath string, workflowDefinition *schema.WorkflowDefinition, dryRun bool, commandLineStack string, fromStep string, ) error
ExecuteWorkflow executes an Atmos workflow.
func ExecuteWorkflowCmd ¶ added in v1.11.0
ExecuteWorkflowCmd executes an Atmos workflow.
func ExecuteWorkflowUI ¶ added in v1.81.0
func FilterAbstractComponents ¶ added in v1.125.0
FilterAbstractComponents This function removes abstract components and returns the list of components.
func FilterEmptySections ¶ added in v1.176.0
func FindComponentDependencies ¶ added in v1.42.0
func FindComponentDependencies(currentStack string, sources schema.ConfigSources) ([]string, []string, error)
FindComponentDependencies finds all imports that the component depends on, and all imports that the component has any sections defined in.
func FindComponentDependenciesLegacy ¶ added in v1.81.0
func FindComponentDependenciesLegacy( stack string, componentType string, component string, baseComponents []string, stackImports map[string]map[string]any, ) ([]string, error)
FindComponentDependenciesLegacy finds all imports where the component or the base component(s) are defined. Component depends on the imported config file if any of the following conditions is true:
- The imported config file has any of the global `backend`, `backend_type`, `env`, `remote_state_backend`, `remote_state_backend_type`, `settings` or `vars` sections which are not empty.
- The imported config file has the component type section, which has any of the `backend`, `backend_type`, `env`, `remote_state_backend`, `remote_state_backend_type`, `settings` or `vars` sections which are not empty.
- The imported config file has the "components" section, which has the component type section, which has the component section.
- The imported config file has the "components" section, which has the component type section, which has the base component(s) section, and the base component section is defined inline (not imported).
func FindComponentStacks ¶ added in v1.81.0
func FindComponentStacks( componentType string, component string, baseComponent string, componentStackMap map[string]map[string][]string, ) ([]string, error)
FindComponentStacks finds all infrastructure stack manifests where the component or the base component is defined.
func FindComponentsDerivedFromBaseComponents ¶ added in v1.81.0
func FindComponentsDerivedFromBaseComponents( stack string, allComponents map[string]any, baseComponents []string, ) ([]string, error)
FindComponentsDerivedFromBaseComponents finds all components that derive from the given base components.
func FindStacksMap ¶ added in v1.4.4
func FindStacksMap(atmosConfig *schema.AtmosConfiguration, ignoreMissingFiles bool) ( map[string]any, map[string]map[string]any, error, )
FindStacksMap processes stack config and returns a map of all stacks.
func FindValidationSection ¶ added in v1.9.0
func FindValidationSection(componentSection map[string]any) (schema.Validation, error)
FindValidationSection finds the 'validation' section in the component config.
func FormatList ¶ added in v1.179.0
FormatList formats a list of strings into a markdown bullet list.
func FuncMap ¶ added in v1.81.0
func FuncMap( atmosConfig *schema.AtmosConfiguration, configAndStacksInfo *schema.ConfigAndStacksInfo, ctx context.Context, gomplateData *data.Data, ) template.FuncMap
FuncMap creates and returns a map of template functions.
func GetComponentRemoteStateBackendStaticType ¶ added in v1.129.0
GetComponentRemoteStateBackendStaticType returns the `remote_state_backend` section for a component in a stack.
func GetFileContent ¶ added in v1.81.0
GetFileContent tries to read and return the file content from the sync map if it exists in the map, otherwise it reads the file, stores its content in the map and returns the content.
func GetIncludeEmptySetting ¶ added in v1.176.0
func GetIncludeEmptySetting(atmosConfig *schema.AtmosConfiguration) bool
func GetPackerManifestFromVars ¶ added in v1.186.0
func GetPackerManifestFromVars(vars *schema.AtmosSectionMapType) (string, error)
GetPackerManifestFromVars returns the Packer manifest filename from the `vars.manifest_file_name`.
func GetPackerTemplateFromSettings ¶ added in v1.186.0
func GetPackerTemplateFromSettings(settings *schema.AtmosSectionMapType) (string, error)
GetPackerTemplateFromSettings returns a Packer template name from the `settings.packer.template` section in the Atmos component manifest.
func GetStackNamePattern ¶ added in v1.66.0
func GetStackNamePattern(atmosConfig *schema.AtmosConfiguration) string
GetStackNamePattern returns the stack name pattern.
func GetStackNameTemplate ¶ added in v1.177.0
func GetStackNameTemplate(atmosConfig *schema.AtmosConfiguration) string
GetStackNameTemplate returns the stack name template.
func GetStaticRemoteStateOutput ¶ added in v1.183.0
func GetStaticRemoteStateOutput( atmosConfig *schema.AtmosConfiguration, component string, stack string, remoteStateSection map[string]any, output string, ) any
GetStaticRemoteStateOutput returns static remote state output for a component in a stack.
func GetTerraformEnvCliArgs ¶ added in v1.193.0
func GetTerraformEnvCliArgs() []string
GetTerraformEnvCliArgs reads the TF_CLI_ARGS environment variable and returns a slice of arguments. Example: TF_CLI_ARGS="-var environment=prod -auto-approve -var region=us-east-1". Returns: ["-var", "environment=prod", "-auto-approve", "-var", "region=us-east-1"].
func GetTerraformEnvCliVars ¶ added in v1.193.0
GetTerraformEnvCliVars reads the TF_CLI_ARGS environment variable, parses all `-var` arguments, and returns them as a map of variables with proper type conversion. This function processes JSON values and returns them as parsed objects. It handles both formats: -var key=value and -var=key=value. Example: TF_CLI_ARGS='-var name=test -var=region=us-east-1 -var tags={"env":"prod","team":"devops"}' Returns: map[string]any{"name": "test", "region": "us-east-1", "tags": map[string]any{"env": "prod", "team": "devops"}}.
func GetTerraformOutput ¶ added in v1.140.0
func GetTerraformOutput( atmosConfig *schema.AtmosConfiguration, stack string, component string, output string, skipCache bool, ) any
GetTerraformOutput retrieves a specified Terraform output variable for a given component within a stack. It optionally uses a cache to avoid redundant state retrievals and supports both static and dynamic backends. Parameters:
- atmosConfig: Atmos configuration pointer
- stack: Stack identifier
- component: Component identifier
- output: Output variable key to retrieve
- skipCache: Flag to bypass cache lookup
Returns the output value or nil if the component is not provisioned.
func GetTerraformState ¶ added in v1.183.0
func GetTerraformState( atmosConfig *schema.AtmosConfiguration, yamlFunc string, stack string, component string, output string, skipCache bool, ) (any, error)
GetTerraformState retrieves a specified Terraform output variable for a given component within a stack. It optionally uses a cache to avoid redundant state retrievals and supports both static and dynamic backends. Parameters:
- atmosConfig: Atmos configuration pointer
- yamlFunc: Name of the calling YAML function for error context
- stack: Stack identifier
- component: Component identifier
- output: Output variable key to retrieve
- skipCache: Flag to bypass cache lookup
Returns the output value or nil if the component is not provisioned.
func IsComponentAbstract ¶ added in v1.78.0
IsComponentAbstract returns 'true' if the component is abstract.
func IsComponentEnabled ¶ added in v1.89.0
IsComponentEnabled returns 'true' if the component is enabled.
func IsGolangTemplate ¶ added in v1.81.0
func IsGolangTemplate(atmosConfig *schema.AtmosConfiguration, str string) (bool, error)
IsGolangTemplate checks if the provided string is a Go template.
func IsKnownWorkflowError ¶ added in v1.179.0
IsKnownWorkflowError returns true if the error matches any known workflow error.
func IsValidDataDir ¶ added in v1.114.0
func NewAtmosValidatorExecutor ¶ added in v1.174.0
func NewAtmosValidatorExecutor(atmosConfig *schema.AtmosConfiguration) *atmosValidatorExecutor
func NewDescribeConfig ¶ added in v1.175.0
func NewDescribeConfig(atmosConfig *schema.AtmosConfiguration) *describeConfigExec
func NewSpinner ¶ added in v1.160.3
NewSpinner initializes a spinner and returns a pointer to a tea.Program.
func NewVersionExec ¶ added in v1.165.2
func NewVersionExec(atmosConfig *schema.AtmosConfiguration) *versionExec
func ProcessBaseComponentConfig ¶ added in v1.81.0
func ProcessBaseComponentConfig( atmosConfig *schema.AtmosConfiguration, baseComponentConfig *schema.BaseComponentConfig, allComponentsMap map[string]any, component string, stack string, baseComponent string, componentBasePath string, checkBaseComponentExists bool, baseComponents *[]string, ) error
ProcessBaseComponentConfig processes base component(s) config.
func ProcessCommandLineArgs ¶ added in v1.119.0
func ProcessCommandLineArgs( componentType string, cmd *cobra.Command, args []string, additionalArgsAndFlags []string, ) (schema.ConfigAndStacksInfo, error)
ProcessCommandLineArgs processes command-line args.
func ProcessComponentConfig ¶ added in v1.66.0
func ProcessComponentConfig( configAndStacksInfo *schema.ConfigAndStacksInfo, stack string, stacksMap map[string]any, componentType string, component string, ) error
ProcessComponentConfig processes component config sections.
func ProcessComponentMetadata ¶ added in v1.8.0
func ProcessComponentMetadata( component string, componentSection map[string]any, ) (map[string]any, string, bool, bool, bool)
ProcessComponentMetadata processes component metadata and returns a base component (if any) and whether the component is real or abstract and whether the component is disabled or not and whether the component is locked.
func ProcessConfigSources ¶ added in v1.42.0
func ProcessConfigSources( configAndStacksInfo schema.ConfigAndStacksInfo, rawStackConfigs map[string]map[string]any, ) (schema.ConfigSources, error)
ProcessConfigSources processes the sources (files) for all sections for a component in a stack.
func ProcessCustomYamlTags ¶ added in v1.111.0
func ProcessCustomYamlTags( atmosConfig *schema.AtmosConfiguration, input schema.AtmosSectionMapType, currentStack string, skip []string, ) (schema.AtmosSectionMapType, error)
func ProcessImportSection ¶ added in v1.81.0
ProcessImportSection processes the `import` section in stack manifests. The `import` section can contain: 1. Project-relative paths (e.g. "mixins/region/us-east-2") 2. Paths relative to the current stack file (e.g. "./_defaults") 3. StackImport structs containing either of the above path types (e.g. "path: mixins/region/us-east-2").
func ProcessStackConfig ¶ added in v1.81.0
func ProcessStackConfig( atmosConfig *schema.AtmosConfiguration, stacksBasePath string, terraformComponentsBasePath string, helmfileComponentsBasePath string, packerComponentsBasePath string, stack string, config map[string]any, processStackDeps bool, processComponentDeps bool, componentTypeFilter string, componentStackMap map[string]map[string][]string, importsConfig map[string]map[string]any, checkBaseComponentExists bool, ) (map[string]any, error)
ProcessStackConfig takes a stack manifest, deep-merges all variables, settings, environments and backends, and returns the final stack configuration for all Terraform/Helmfile/Packer components.
func ProcessStacks ¶ added in v1.3.28
func ProcessStacks( atmosConfig *schema.AtmosConfiguration, configAndStacksInfo schema.ConfigAndStacksInfo, checkStack bool, processTemplates bool, processYamlFunctions bool, skip []string, ) (schema.ConfigAndStacksInfo, error)
ProcessStacks processes stack config.
func ProcessTmpl ¶ added in v1.81.0
func ProcessTmpl( atmosConfig *schema.AtmosConfiguration, tmplName string, tmplValue string, tmplData any, ignoreMissingTemplateValues bool, ) (string, error)
ProcessTmpl parses and executes Go templates.
func ProcessTmplWithDatasources ¶ added in v1.81.0
func ProcessTmplWithDatasources( atmosConfig *schema.AtmosConfiguration, configAndStacksInfo *schema.ConfigAndStacksInfo, settingsSection schema.Settings, tmplName string, tmplValue string, tmplData any, ignoreMissingTemplateValues bool, ) (string, error)
ProcessTmplWithDatasources parses and executes Go templates with datasources.
func ProcessTmplWithDatasourcesGomplate ¶ added in v1.175.0
func ProcessTmplWithDatasourcesGomplate( atmosConfig *schema.AtmosConfiguration, tmplName string, tmplValue string, mergedData map[string]interface{}, ignoreMissingTemplateValues bool, ) (string, error)
ProcessTmplWithDatasourcesGomplate parses and executes Go templates with datasources using Gomplate.
func ProcessYAMLConfigFile ¶ added in v1.81.0
func ProcessYAMLConfigFile( atmosConfig *schema.AtmosConfiguration, basePath string, filePath string, importsConfig map[string]map[string]any, context map[string]any, ignoreMissingFiles bool, skipTemplatesProcessingInImports bool, ignoreMissingTemplateValues bool, skipIfMissing bool, parentTerraformOverridesInline map[string]any, parentTerraformOverridesImports map[string]any, parentHelmfileOverridesInline map[string]any, parentHelmfileOverridesImports map[string]any, atmosManifestJsonSchemaFilePath string, ) ( map[string]any, map[string]map[string]any, map[string]any, map[string]any, map[string]any, map[string]any, map[string]any, error, )
ProcessYAMLConfigFile takes a path to a YAML stack manifest, recursively processes and deep-merges all the imports, and returns the final stack config.
func ProcessYAMLConfigFileWithContext ¶ added in v1.191.0
func ProcessYAMLConfigFileWithContext( atmosConfig *schema.AtmosConfiguration, basePath string, filePath string, importsConfig map[string]map[string]any, context map[string]any, ignoreMissingFiles bool, skipTemplatesProcessingInImports bool, ignoreMissingTemplateValues bool, skipIfMissing bool, parentTerraformOverridesInline map[string]any, parentTerraformOverridesImports map[string]any, parentHelmfileOverridesInline map[string]any, parentHelmfileOverridesImports map[string]any, atmosManifestJsonSchemaFilePath string, mergeContext *m.MergeContext, ) ( map[string]any, map[string]map[string]any, map[string]any, map[string]any, map[string]any, map[string]any, map[string]any, error, )
ProcessYAMLConfigFileWithContext takes a path to a YAML stack manifest, recursively processes and deep-merges all the imports with context tracking, and returns the final stack config.
func ProcessYAMLConfigFiles ¶ added in v1.81.0
func ProcessYAMLConfigFiles( atmosConfig *schema.AtmosConfiguration, stacksBasePath string, terraformComponentsBasePath string, helmfileComponentsBasePath string, packerComponentsBasePath string, filePaths []string, processStackDeps bool, processComponentDeps bool, ignoreMissingFiles bool, ) ( []string, map[string]any, map[string]map[string]any, error, )
ProcessYAMLConfigFiles takes a list of paths to stack manifests, processes and deep-merges all imports, and returns a list of stack configs.
func ReadAndProcessComponentVendorConfigFile ¶ added in v1.47.0
func ReadAndProcessComponentVendorConfigFile( atmosConfig *schema.AtmosConfiguration, component string, componentType string, ) (schema.VendorComponentConfig, string, error)
ReadAndProcessComponentVendorConfigFile reads and processes the component vendoring config file `component.yaml`.
func ReadAndProcessVendorConfigFile ¶ added in v1.47.0
func ReadAndProcessVendorConfigFile( atmosConfig *schema.AtmosConfiguration, vendorConfigFile string, checkGlobalConfig bool, ) (schema.AtmosVendorConfig, bool, string, error)
ReadAndProcessVendorConfigFile reads and processes the Atmos vendoring config file `vendor.yaml`.
func RunSpinner ¶ added in v1.160.3
RunSpinner executes the spinner program in a goroutine.
func SanitizeFileName ¶ added in v1.153.0
SanitizeFileName replaces invalid characters and query strings with underscores for Windows.
func SetDescribeAffectedFlagValueInCliArgs ¶ added in v1.181.0
func SetDescribeAffectedFlagValueInCliArgs(flags *pflag.FlagSet, describe *DescribeAffectedCmdArgs)
SetDescribeAffectedFlagValueInCliArgs sets the flag values in CLI arguments.
func StopSpinner ¶ added in v1.160.3
StopSpinner stops the spinner program and waits for the completion.
func TerraformPlanDiff ¶ added in v1.166.0
func TerraformPlanDiff(atmosConfig *schema.AtmosConfiguration, info *schema.ConfigAndStacksInfo) error
TerraformPlanDiff represents the plan-diff command implementation.
func ValidateComponent ¶ added in v1.9.0
func ValidateComponent( atmosConfig *schema.AtmosConfiguration, componentName string, componentSection map[string]any, schemaPath string, schemaType string, modulePaths []string, timeoutSeconds int, ) (bool, error)
ValidateComponent validates the component config using JsonSchema or OPA schema documents.
func ValidateStacks ¶ added in v1.75.0
func ValidateStacks(atmosConfig *schema.AtmosConfiguration) error
ValidateStacks validates Atmos stack configuration.
func ValidateWithCue ¶ added in v1.9.0
ValidateWithCue validates the data structure using the provided CUE document. https://cuelang.org/docs/integrations/go/#processing-cue-in-go
func ValidateWithJsonSchema ¶ added in v1.9.0
ValidateWithJsonSchema validates the data structure using the provided JSON Schema document. https://github.com/santhosh-tekuri/jsonschema https://go.dev/play/p/Hhax3MrtD8r
func ValidateWithOpa ¶ added in v1.9.0
func ValidateWithOpa( data any, schemaPath string, modulePaths []string, timeoutSeconds int, ) (bool, error)
ValidateWithOpa validates the data structure using the provided OPA document. https://github.com/open-policy-agent/opa/blob/main/rego/example_test.go https://github.com/open-policy-agent/opa/blob/main/rego/rego_test.go https://www.openpolicyagent.org/docs/latest/integration/#sdk
func ValidateWithOpaLegacy ¶ added in v1.38.0
func ValidateWithOpaLegacy( data any, schemaName string, schemaText string, timeoutSeconds int, ) (bool, error)
ValidateWithOpaLegacy validates the data structure using the provided OPA document. https://www.openpolicyagent.org/docs/latest/integration/#sdk
Types ¶
type AtmosFuncs ¶ added in v1.81.0
type AtmosFuncs struct {
// contains filtered or unexported fields
}
func (AtmosFuncs) Component ¶ added in v1.81.0
func (f AtmosFuncs) Component(component string, stack string) (any, error)
func (AtmosFuncs) GomplateDatasource ¶ added in v1.84.0
func (f AtmosFuncs) GomplateDatasource(alias string, args ...string) (any, error)
type ComponentSkipFunc ¶ added in v1.166.0
type CopyContext ¶ added in v1.168.0
type CopyContext struct {
SrcDir string
DstDir string
BaseDir string
Excluded []string
Included []string
}
CopyContext groups parameters for directory copy operations.
type DescribeAffectedCmdArgs ¶ added in v1.87.0
type DescribeAffectedCmdArgs struct {
CLIConfig *schema.AtmosConfiguration
CloneTargetRef bool
Format string
IncludeDependents bool
IncludeSettings bool
IncludeSpaceliftAdminStacks bool
OutputFile string
Ref string
RepoPath string
SHA string
SSHKeyPath string
SSHKeyPassword string
Verbose bool
Upload bool
Stack string
Query string
ProcessTemplates bool
ProcessYamlFunctions bool
Skip []string
ExcludeLocked bool
}
func ParseDescribeAffectedCliArgs ¶ added in v1.181.0
func ParseDescribeAffectedCliArgs(cmd *cobra.Command, args []string) (DescribeAffectedCmdArgs, error)
ParseDescribeAffectedCliArgs parses the command-line arguments of the `atmos describe affected` command.
type DescribeAffectedExec ¶ added in v1.179.0
type DescribeAffectedExec interface {
Execute(*DescribeAffectedCmdArgs) error
}
func NewDescribeAffectedExec ¶ added in v1.179.0
func NewDescribeAffectedExec( atmosConfig *schema.AtmosConfiguration, ) DescribeAffectedExec
NewDescribeAffectedExec creates a new `describe affected` executor.
type DescribeAffectedExecCreator ¶ added in v1.181.0
type DescribeAffectedExecCreator func(atmosConfig *schema.AtmosConfiguration) DescribeAffectedExec
type DescribeComponentExec ¶ added in v1.176.0
type DescribeComponentExec struct {
IsTTYSupportForStdout func() bool
// contains filtered or unexported fields
}
func NewDescribeComponentExec ¶ added in v1.176.0
func NewDescribeComponentExec() *DescribeComponentExec
func (*DescribeComponentExec) ExecuteDescribeComponentCmd ¶ added in v1.176.0
func (d *DescribeComponentExec) ExecuteDescribeComponentCmd(describeComponentParams DescribeComponentParams) error
type DescribeComponentParams ¶ added in v1.176.0
type DescribeConfigFormatError ¶ added in v1.175.0
type DescribeConfigFormatError struct {
// contains filtered or unexported fields
}
func (DescribeConfigFormatError) Error ¶ added in v1.175.0
func (e DescribeConfigFormatError) Error() string
type DescribeDependentsExec ¶ added in v1.182.0
type DescribeDependentsExec interface {
Execute(describeDependentsExecProps *DescribeDependentsExecProps) error
}
func NewDescribeDependentsExec ¶ added in v1.182.0
func NewDescribeDependentsExec(atmosConfig *schema.AtmosConfiguration) DescribeDependentsExec
NewDescribeDependentsExec creates a new `describe dependents` executor.
type DescribeDependentsExecProps ¶ added in v1.182.0
type DescribeStacksArgs ¶ added in v1.179.0
type DescribeStacksExec ¶ added in v1.179.0
type DescribeStacksExec interface {
Execute(atmosConfig *schema.AtmosConfiguration, args *DescribeStacksArgs) error
}
func NewDescribeStacksExec ¶ added in v1.179.0
func NewDescribeStacksExec() DescribeStacksExec
type DescribeWorkflowsArgs ¶ added in v1.181.0
type DescribeWorkflowsExec ¶ added in v1.181.0
type DescribeWorkflowsExec interface {
Execute(*schema.AtmosConfiguration, *DescribeWorkflowsArgs) error
}
func NewDescribeWorkflowsExec ¶ added in v1.181.0
func NewDescribeWorkflowsExec() DescribeWorkflowsExec
type Directory ¶ added in v1.114.0
type Directory struct {
Name string
FullPath string
RelativePath string
Files []ObjectInfo
}
func CollectComponentObjects ¶ added in v1.174.0
func CollectComponentsDirectoryObjects ¶ added in v1.174.0
type ErrInvalidPattern ¶ added in v1.174.0
type ErrInvalidPattern struct {
Pattern string
// contains filtered or unexported fields
}
func (ErrInvalidPattern) Error ¶ added in v1.174.0
func (e ErrInvalidPattern) Error() string
type MockDescribeAffectedExec ¶ added in v1.179.0
type MockDescribeAffectedExec struct {
// contains filtered or unexported fields
}
MockDescribeAffectedExec is a mock of DescribeAffectedExec interface.
func NewMockDescribeAffectedExec ¶ added in v1.179.0
func NewMockDescribeAffectedExec(ctrl *gomock.Controller) *MockDescribeAffectedExec
NewMockDescribeAffectedExec creates a new mock instance.
func (*MockDescribeAffectedExec) EXPECT ¶ added in v1.179.0
func (m *MockDescribeAffectedExec) EXPECT() *MockDescribeAffectedExecMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockDescribeAffectedExec) Execute ¶ added in v1.179.0
func (m *MockDescribeAffectedExec) Execute(arg0 *DescribeAffectedCmdArgs) error
Execute mocks base method.
type MockDescribeAffectedExecMockRecorder ¶ added in v1.179.0
type MockDescribeAffectedExecMockRecorder struct {
// contains filtered or unexported fields
}
MockDescribeAffectedExecMockRecorder is the mock recorder for MockDescribeAffectedExec.
func (*MockDescribeAffectedExecMockRecorder) Execute ¶ added in v1.179.0
func (mr *MockDescribeAffectedExecMockRecorder) Execute(arg0 interface{}) *gomock.Call
Execute indicates an expected call of Execute.
type MockDescribeDependentsExec ¶ added in v1.182.0
type MockDescribeDependentsExec struct {
// contains filtered or unexported fields
}
MockDescribeDependentsExec is a mock of DescribeDependentsExec interface.
func NewMockDescribeDependentsExec ¶ added in v1.182.0
func NewMockDescribeDependentsExec(ctrl *gomock.Controller) *MockDescribeDependentsExec
NewMockDescribeDependentsExec creates a new mock instance.
func (*MockDescribeDependentsExec) EXPECT ¶ added in v1.182.0
func (m *MockDescribeDependentsExec) EXPECT() *MockDescribeDependentsExecMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockDescribeDependentsExec) Execute ¶ added in v1.182.0
func (m *MockDescribeDependentsExec) Execute(describeDependentsExecProps *DescribeDependentsExecProps) error
Execute mocks base method.
type MockDescribeDependentsExecMockRecorder ¶ added in v1.182.0
type MockDescribeDependentsExecMockRecorder struct {
// contains filtered or unexported fields
}
MockDescribeDependentsExecMockRecorder is the mock recorder for MockDescribeDependentsExec.
func (*MockDescribeDependentsExecMockRecorder) Execute ¶ added in v1.182.0
func (mr *MockDescribeDependentsExecMockRecorder) Execute(describeDependentsExecProps interface{}) *gomock.Call
Execute indicates an expected call of Execute.
type MockDescribeStacksExec ¶ added in v1.179.0
type MockDescribeStacksExec struct {
// contains filtered or unexported fields
}
MockDescribeStacksExec is a mock of DescribeStacksExec interface.
func NewMockDescribeStacksExec ¶ added in v1.179.0
func NewMockDescribeStacksExec(ctrl *gomock.Controller) *MockDescribeStacksExec
NewMockDescribeStacksExec creates a new mock instance.
func (*MockDescribeStacksExec) EXPECT ¶ added in v1.179.0
func (m *MockDescribeStacksExec) EXPECT() *MockDescribeStacksExecMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockDescribeStacksExec) Execute ¶ added in v1.179.0
func (m *MockDescribeStacksExec) Execute(atmosConfig *schema.AtmosConfiguration, args *DescribeStacksArgs) error
Execute mocks base method.
type MockDescribeStacksExecMockRecorder ¶ added in v1.179.0
type MockDescribeStacksExecMockRecorder struct {
// contains filtered or unexported fields
}
MockDescribeStacksExecMockRecorder is the mock recorder for MockDescribeStacksExec.
func (*MockDescribeStacksExecMockRecorder) Execute ¶ added in v1.179.0
func (mr *MockDescribeStacksExecMockRecorder) Execute(atmosConfig, args interface{}) *gomock.Call
Execute indicates an expected call of Execute.
type MockDescribeWorkflowsExec ¶ added in v1.181.0
type MockDescribeWorkflowsExec struct {
// contains filtered or unexported fields
}
MockDescribeWorkflowsExec is a mock of DescribeWorkflowsExec interface.
func NewMockDescribeWorkflowsExec ¶ added in v1.181.0
func NewMockDescribeWorkflowsExec(ctrl *gomock.Controller) *MockDescribeWorkflowsExec
NewMockDescribeWorkflowsExec creates a new mock instance.
func (*MockDescribeWorkflowsExec) EXPECT ¶ added in v1.181.0
func (m *MockDescribeWorkflowsExec) EXPECT() *MockDescribeWorkflowsExecMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockDescribeWorkflowsExec) Execute ¶ added in v1.181.0
func (m *MockDescribeWorkflowsExec) Execute(arg0 *schema.AtmosConfiguration, arg1 *DescribeWorkflowsArgs) error
Execute mocks base method.
type MockDescribeWorkflowsExecMockRecorder ¶ added in v1.181.0
type MockDescribeWorkflowsExecMockRecorder struct {
// contains filtered or unexported fields
}
MockDescribeWorkflowsExecMockRecorder is the mock recorder for MockDescribeWorkflowsExec.
func (*MockDescribeWorkflowsExecMockRecorder) Execute ¶ added in v1.181.0
func (mr *MockDescribeWorkflowsExecMockRecorder) Execute(arg0, arg1 interface{}) *gomock.Call
Execute indicates an expected call of Execute.
type ObjectInfo ¶ added in v1.114.0
type PackerFlags ¶ added in v1.186.0
PackerFlags type represents Packer command-line flags.
type PlanFileOptions ¶ added in v1.166.0
type PlanFileOptions struct {
ComponentPath string
OrigPlanFile string
NewPlanFile string
TmpDir string
}
PlanFileOptions contains parameters for plan file operations.
type PlanfileOptions ¶ added in v1.172.0
type PlanfileOptions struct {
Component string
Stack string
Format string
File string
ProcessTemplates bool
ProcessYamlFunctions bool
Skip []string
}
PlanfileOptions holds the options for generating a Terraform planfile.
type PrefixCopyContext ¶ added in v1.168.0
type PrefixCopyContext struct {
SrcDir string
DstDir string
GlobalBase string
Prefix string
Excluded []string
}
PrefixCopyContext groups parameters for prefix-based copy operations.
type ProLockCmdArgs ¶ added in v1.87.0
type ProLockCmdArgs struct {
ProLockUnlockCmdArgs
LockMessage string
LockTTL int32
}
type ProLockUnlockCmdArgs ¶ added in v1.87.0
type ProLockUnlockCmdArgs struct {
Component string
Stack string
AtmosConfig schema.AtmosConfiguration
}
type ProUnlockCmdArgs ¶ added in v1.87.0
type ProUnlockCmdArgs struct {
ProLockUnlockCmdArgs
}
type SectionFilter ¶ added in v1.176.0
SectionFilter defines the interface for filtering map sections.
type TemplateRenderer ¶ added in v1.175.0
type TemplateRenderer interface {
Render(tmplName, tmplValue string, mergedData map[string]interface{}, ignoreMissing bool) (string, error)
}
TemplateRenderer is an interface for rendering templates.
type VendorFlags ¶ added in v1.166.0
Source Files
¶
- atlantis_generate_repo_config.go
- atlantis_utils.go
- atmos.go
- aws_eks_update_kubeconfig.go
- cli_utils.go
- component_utils.go
- config_sources_utils.go
- constants.go
- copy_glob.go
- describe_affected.go
- describe_affected_helpers.go
- describe_affected_utils.go
- describe_affected_utils_2.go
- describe_component.go
- describe_config.go
- describe_dependents.go
- describe_stacks.go
- describe_workflows.go
- docs_generate.go
- file_utils.go
- filter_utils.go
- helmfile.go
- helmfile_generate_varfile.go
- help.go
- mock_describe_affected.go
- mock_describe_dependents.go
- mock_describe_stacks.go
- mock_describe_workflows.go
- oci_utils.go
- packer.go
- packer_output.go
- packer_utils.go
- path_utils.go
- pro.go
- shell_utils.go
- spacelift_utils.go
- spinner_utils.go
- stack_processor_utils.go
- stack_utils.go
- tar_utils.go
- template_funcs.go
- template_funcs_component.go
- template_funcs_gomplate_datasource.go
- template_funcs_store.go
- template_utils.go
- terraform.go
- terraform_clean.go
- terraform_clean_util.go
- terraform_cli_args_utils.go
- terraform_generate_backend.go
- terraform_generate_backends.go
- terraform_generate_planfile.go
- terraform_generate_varfile.go
- terraform_generate_varfiles.go
- terraform_output_utils.go
- terraform_output_utils_other.go
- terraform_plan_diff.go
- terraform_plan_diff_comparison.go
- terraform_plan_diff_formatting.go
- terraform_plan_diff_preparation.go
- terraform_remote_state_backend_utils.go
- terraform_state_utils.go
- terraform_utils.go
- utils.go
- validate_component.go
- validate_schema.go
- validate_stacks.go
- validate_utils.go
- vendor.go
- vendor_component_utils.go
- vendor_model.go
- vendor_uri_helpers.go
- vendor_utils.go
- version.go
- workflow.go
- workflow_utils.go
- yaml_func_errors.go
- yaml_func_store.go
- yaml_func_store_get.go
- yaml_func_template.go
- yaml_func_terraform_output.go
- yaml_func_terraform_state.go
- yaml_func_utils.go