exec

package
v1.123.0 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2024 License: Apache-2.0 Imports: 65 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildAtlantisProjectNameFromComponentConfig added in v1.31.0

func BuildAtlantisProjectNameFromComponentConfig(
	cliConfig schema.CliConfiguration,
	configAndStacksInfo schema.ConfigAndStacksInfo,
) (string, error)

BuildAtlantisProjectNameFromComponentConfig builds an Atlantis project name from the component config

func BuildComponentPath added in v1.31.0

func BuildComponentPath(
	cliConfig schema.CliConfiguration,
	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(
	cliConfig schema.CliConfiguration,
	configAndStacksInfo schema.ConfigAndStacksInfo,
) (string, error)

BuildSpaceliftStackNameFromComponentConfig builds Spacelift stack name from the component config

func BuildSpaceliftStackNames added in v1.31.0

func BuildSpaceliftStackNames(stacks map[string]any, stackNamePattern string) ([]string, error)

BuildSpaceliftStackNames builds Spacelift stack names

func BuildTerraformWorkspace added in v1.4.8

func BuildTerraformWorkspace(cliConfig schema.CliConfiguration, configAndStacksInfo schema.ConfigAndStacksInfo) (string, error)

BuildTerraformWorkspace builds Terraform workspace

func CreateComponentStackMap added in v1.81.0

func CreateComponentStackMap(
	cliConfig schema.CliConfiguration,
	stacksBasePath string,
	terraformComponentsBasePath string,
	helmfileComponentsBasePath string,
	filePath string,
) (map[string]map[string][]string, error)

CreateComponentStackMap accepts a config file and creates a map of component-stack dependencies

func DeletePathTerraform added in v1.114.0

func DeletePathTerraform(fullPath string, objectName string) error

DeletePathTerraform deletes the specified file or folder. with a checkmark or xmark

func ExecuteAtlantisGenerateRepoConfig added in v1.5.0

func ExecuteAtlantisGenerateRepoConfig(
	cliConfig schema.CliConfiguration,
	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(
	cliConfig schema.CliConfiguration,
	outputPath string,
	configTemplateName string,
	projectTemplateName string,
	ref string,
	sha string,
	repoPath string,
	sshKeyPath string,
	sshKeyPassword string,
	verbose bool,
	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

func ExecuteAtlantisGenerateRepoConfigCmd(cmd *cobra.Command, args []string) error

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(
	cliConfig schema.CliConfiguration,
	vendorConfigFileName string,
	atmosVendorSpec schema.AtmosVendorSpec,
	component string,
	tags []string,
	dryRun bool,
) 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 ExecuteAwsEksUpdateKubeconfigCommand(cmd *cobra.Command, args []string) error

func ExecuteComponentVendorInternal added in v1.47.0

func ExecuteComponentVendorInternal(
	cliConfig schema.CliConfiguration,
	vendorComponentSpec schema.VendorComponentSpec,
	component string,
	componentPath string,
	dryRun bool,
) error

ExecuteComponentVendorInternal executes the 'atmos vendor pull' command for a component Supports all protocols (local files, Git, Mercurial, HTTP, HTTPS, Amazon S3, Google GCP), URL and archive formats described in https://github.com/hashicorp/go-getter https://www.allee.xyz/en/posts/getting-started-with-go-getter https://github.com/otiai10/copy https://opencontainers.org/ https://github.com/google/go-containerregistry https://docs.aws.amazon.com/AmazonECR/latest/public/public-registries.html

func ExecuteDescribeAffectedCmd added in v1.17.0

func ExecuteDescribeAffectedCmd(cmd *cobra.Command, args []string) error

ExecuteDescribeAffectedCmd executes `describe affected` command

func ExecuteDescribeAffectedWithTargetRefCheckout added in v1.71.0

func ExecuteDescribeAffectedWithTargetRefCheckout(
	cliConfig schema.CliConfiguration,
	ref string,
	sha string,
	verbose bool,
	includeSpaceliftAdminStacks bool,
	includeSettings bool,
	stack string,
) ([]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(
	cliConfig schema.CliConfiguration,
	ref string,
	sha string,
	sshKeyPath string,
	sshKeyPassword string,
	verbose bool,
	includeSpaceliftAdminStacks bool,
	includeSettings bool,
	stack string,
) ([]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(
	cliConfig schema.CliConfiguration,
	targetRefPath string,
	verbose bool,
	includeSpaceliftAdminStacks bool,
	includeSettings bool,
	stack string,
) ([]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,
) (map[string]any, error)

ExecuteDescribeComponent describes component config

func ExecuteDescribeComponentCmd added in v1.11.0

func ExecuteDescribeComponentCmd(cmd *cobra.Command, args []string) error

ExecuteDescribeComponentCmd executes `describe component` command

func ExecuteDescribeConfigCmd added in v1.11.0

func ExecuteDescribeConfigCmd(cmd *cobra.Command, args []string) error

ExecuteDescribeConfigCmd executes `describe config` command

func ExecuteDescribeDependents added in v1.33.2

func ExecuteDescribeDependents(
	cliConfig schema.CliConfiguration,
	component string,
	stack string,
	includeSettings bool,
) ([]schema.Dependent, error)

ExecuteDescribeDependents produces a list of Atmos components in Atmos stacks that depend on the provided Atmos component

func ExecuteDescribeDependentsCmd added in v1.33.2

func ExecuteDescribeDependentsCmd(cmd *cobra.Command, args []string) error

ExecuteDescribeDependentsCmd executes `describe dependents` command

func ExecuteDescribeStacks added in v1.4.4

func ExecuteDescribeStacks(
	cliConfig schema.CliConfiguration,
	filterByStack string,
	components []string,
	componentTypes []string,
	sections []string,
	ignoreMissingFiles bool,
	processTemplates bool,
	includeEmptyStacks bool,
) (map[string]any, error)

ExecuteDescribeStacks processes stack manifests and returns the final map of stacks and components

func ExecuteDescribeStacksCmd added in v1.11.0

func ExecuteDescribeStacksCmd(cmd *cobra.Command, args []string) error

ExecuteDescribeStacksCmd executes `describe stacks` command

func ExecuteDescribeWorkflows added in v1.55.0

func ExecuteDescribeWorkflows(
	cliConfig schema.CliConfiguration,
) ([]schema.DescribeWorkflowsItem, map[string][]string, map[string]schema.WorkflowManifest, error)

ExecuteDescribeWorkflows executes `atmos describe workflows` command

func ExecuteDescribeWorkflowsCmd added in v1.55.0

func ExecuteDescribeWorkflowsCmd(cmd *cobra.Command, args []string) error

ExecuteDescribeWorkflowsCmd executes `atmos describe workflows` CLI command

func ExecuteHelmfile

func ExecuteHelmfile(info schema.ConfigAndStacksInfo) error

ExecuteHelmfile executes helmfile commands

func ExecuteHelmfileCmd added in v1.11.0

func ExecuteHelmfileCmd(cmd *cobra.Command, args []string, additionalArgsAndFlags []string) error

ExecuteHelmfileCmd parses the provided arguments and flags and executes helmfile commands

func ExecuteHelmfileGenerateVarfileCmd added in v1.11.0

func ExecuteHelmfileGenerateVarfileCmd(cmd *cobra.Command, args []string) error

ExecuteHelmfileGenerateVarfileCmd executes `helmfile generate varfile` command

func ExecuteProLockCommand added in v1.87.0

func ExecuteProLockCommand(cmd *cobra.Command, args []string) error

ExecuteProLockCommand executes `atmos pro lock` command

func ExecuteProUnlockCommand added in v1.87.0

func ExecuteProUnlockCommand(cmd *cobra.Command, args []string) error

ExecuteProUnlockCommand executes `atmos pro unlock` command

func ExecuteShell added in v1.16.0

func ExecuteShell(
	cliConfig schema.CliConfiguration,
	command string,
	name string,
	dir string,
	env []string,
	dryRun bool,
) error

ExecuteShell runs a shell script

func ExecuteShellAndReturnOutput added in v1.16.0

func ExecuteShellAndReturnOutput(
	cliConfig schema.CliConfiguration,
	command string,
	name string,
	dir string,
	env []string,
	dryRun bool,
) (string, error)

ExecuteShellAndReturnOutput runs a shell script and capture its standard output

func ExecuteShellCommand added in v1.4.9

func ExecuteShellCommand(
	cliConfig schema.CliConfiguration,
	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

func ExecuteStackVendorInternal(
	stack string,
	dryRun bool,
) error

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 ExecuteTerraformCmd added in v1.11.0

func ExecuteTerraformCmd(cmd *cobra.Command, args []string, additionalArgsAndFlags []string) error

ExecuteTerraformCmd parses the provided arguments and flags and executes terraform commands

func ExecuteTerraformGenerateBackendCmd added in v1.11.0

func ExecuteTerraformGenerateBackendCmd(cmd *cobra.Command, args []string) error

ExecuteTerraformGenerateBackendCmd executes `terraform generate backend` command

func ExecuteTerraformGenerateBackends

func ExecuteTerraformGenerateBackends(
	cliConfig schema.CliConfiguration,
	fileTemplate string,
	format string,
	stacks []string,
	components []string,
) error

ExecuteTerraformGenerateBackends generates backend configs for all terraform components

func ExecuteTerraformGenerateBackendsCmd added in v1.7.0

func ExecuteTerraformGenerateBackendsCmd(cmd *cobra.Command, args []string) error

ExecuteTerraformGenerateBackendsCmd executes `terraform generate backends` command

func ExecuteTerraformGenerateVarfileCmd added in v1.11.0

func ExecuteTerraformGenerateVarfileCmd(cmd *cobra.Command, args []string) error

ExecuteTerraformGenerateVarfileCmd executes `terraform generate varfile` command

func ExecuteTerraformGenerateVarfiles added in v1.5.0

func ExecuteTerraformGenerateVarfiles(
	cliConfig schema.CliConfiguration,
	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

func ExecuteTerraformGenerateVarfilesCmd(cmd *cobra.Command, args []string) error

ExecuteTerraformGenerateVarfilesCmd executes `terraform generate varfiles` command

func ExecuteValidateComponent added in v1.9.0

func ExecuteValidateComponent(
	cliConfig schema.CliConfiguration,
	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, OPA or CUE schema documents

func ExecuteValidateComponentCmd added in v1.9.0

func ExecuteValidateComponentCmd(cmd *cobra.Command, args []string) (string, string, error)

ExecuteValidateComponentCmd executes `validate component` command

func ExecuteValidateStacksCmd added in v1.11.0

func ExecuteValidateStacksCmd(cmd *cobra.Command, args []string) error

ExecuteValidateStacksCmd executes `validate stacks` command

func ExecuteVendorDiffCmd added in v1.11.0

func ExecuteVendorDiffCmd(cmd *cobra.Command, args []string) error

ExecuteVendorDiffCmd executes `vendor diff` commands

func ExecuteVendorPullCmd added in v1.11.0

func ExecuteVendorPullCmd(cmd *cobra.Command, args []string) error

ExecuteVendorPullCmd executes `vendor pull` commands

func ExecuteVendorPullCommand added in v1.47.0

func ExecuteVendorPullCommand(cmd *cobra.Command, args []string) error

ExecuteVendorPullCommand executes `atmos vendor` commands

func ExecuteWorkflow added in v1.4.0

func ExecuteWorkflow(
	cliConfig schema.CliConfiguration,
	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

func ExecuteWorkflowCmd(cmd *cobra.Command, args []string) error

ExecuteWorkflowCmd executes an Atmos workflow

func ExecuteWorkflowUI added in v1.81.0

func ExecuteWorkflowUI(cliConfig schema.CliConfiguration) (string, string, string, error)

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:

  1. 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.
  2. 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.
  3. The imported config file has the "components" section, which has the component type section, which has the component section.
  4. 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(cliConfig schema.CliConfiguration, 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 'validation' section in the component config

func FuncMap added in v1.81.0

func FuncMap(cliConfig schema.CliConfiguration, ctx context.Context, gomplateData *data.Data) template.FuncMap

FuncMap creates and returns a map of template functions

func GetFileContent added in v1.81.0

func GetFileContent(filePath string) (string, error)

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 GetStackNamePattern added in v1.66.0

func GetStackNamePattern(cliConfig schema.CliConfiguration) string

GetStackNamePattern returns stack name pattern

func IsComponentAbstract added in v1.78.0

func IsComponentAbstract(metadataSection map[string]any) bool

IsComponentAbstract returns 'true' if the component is abstract

func IsComponentEnabled added in v1.89.0

func IsComponentEnabled(varsSection map[string]any) bool

IsComponentEnabled returns 'true' if the component is enabled

func IsGolangTemplate added in v1.81.0

func IsGolangTemplate(str string) (bool, error)

IsGolangTemplate checks if the provided string is a Go template

func IsValidDataDir added in v1.114.0

func IsValidDataDir(tfDataDir string) error

func ProcessBaseComponentConfig added in v1.81.0

func ProcessBaseComponentConfig(
	cliConfig schema.CliConfiguration,
	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)

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

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(cliConfig schema.CliConfiguration, input schema.AtmosSectionMapType) (schema.AtmosSectionMapType, error)

func ProcessImportSection added in v1.81.0

func ProcessImportSection(stackMap map[string]any, filePath string) ([]schema.StackImport, error)

ProcessImportSection processes the `import` section in stack manifests The `import` section` can be of the following types: 1. list of `StackImport` structs 2. list of strings 3. List of strings and `StackImport` structs in the same file

func ProcessStackConfig added in v1.81.0

func ProcessStackConfig(
	cliConfig schema.CliConfiguration,
	stacksBasePath string,
	terraformComponentsBasePath string,
	helmfileComponentsBasePath 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 and helmfile components

func ProcessStacks added in v1.3.28

func ProcessStacks(
	cliConfig schema.CliConfiguration,
	configAndStacksInfo schema.ConfigAndStacksInfo,
	checkStack bool,
	processTemplates bool,
) (schema.ConfigAndStacksInfo, error)

ProcessStacks processes stack config

func ProcessTmpl added in v1.81.0

func ProcessTmpl(
	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(
	cliConfig schema.CliConfiguration,
	settingsSection schema.Settings,
	tmplName string,
	tmplValue string,
	tmplData any,
	ignoreMissingTemplateValues bool,
) (string, error)

ProcessTmplWithDatasources parses and executes Go templates with datasources

func ProcessYAMLConfigFile added in v1.81.0

func ProcessYAMLConfigFile(
	cliConfig schema.CliConfiguration,
	basePath string,
	filePath string,
	importsConfig map[string]map[string]any,
	context map[string]any,
	ignoreMissingFiles bool,
	skipTemplatesProcessingInImports bool,
	ignoreMissingTemplateValues bool,
	skipIfMissing bool,
	parentTerraformOverrides map[string]any,
	parentHelmfileOverrides map[string]any,
	atmosManifestJsonSchemaFilePath string,
) (
	map[string]any,
	map[string]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 imports, and returns the final stack config

func ProcessYAMLConfigFiles added in v1.81.0

func ProcessYAMLConfigFiles(
	cliConfig schema.CliConfiguration,
	stacksBasePath string,
	terraformComponentsBasePath string,
	helmfileComponentsBasePath 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(
	cliConfig schema.CliConfiguration,
	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(
	cliConfig schema.CliConfiguration,
	vendorConfigFile string,
) (schema.AtmosVendorConfig, bool, string, error)

ReadAndProcessVendorConfigFile reads and processes the Atmos vendoring config file `vendor.yaml`

func ValidateComponent added in v1.9.0

func ValidateComponent(
	cliConfig schema.CliConfiguration,
	componentName string,
	componentSection any,
	schemaPath string,
	schemaType string,
	modulePaths []string,
	timeoutSeconds int,
) (bool, error)

ValidateComponent validates the component config using JsonSchema, OPA or CUE schema documents

func ValidateStacks added in v1.75.0

func ValidateStacks(cliConfig schema.CliConfiguration) error

ValidateStacks validates Atmos stack configuration

func ValidateWithCue added in v1.9.0

func ValidateWithCue(data any, schemaName string, schemaText string) (bool, error)

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

func ValidateWithJsonSchema(data any, schemaName string, schemaText string) (bool, error)

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 DescribeAffectedCmdArgs added in v1.87.0

type DescribeAffectedCmdArgs struct {
	CLIConfig                   schema.CliConfiguration
	CloneTargetRef              bool
	Format                      string
	IncludeDependents           bool
	IncludeSettings             bool
	IncludeSpaceliftAdminStacks bool
	Logger                      *l.Logger
	OutputFile                  string
	Ref                         string
	RepoPath                    string
	SHA                         string
	SSHKeyPath                  string
	SSHKeyPassword              string
	Verbose                     bool
	Upload                      bool
	Stack                       string
}

type Directory added in v1.114.0

type Directory struct {
	Name         string
	FullPath     string
	RelativePath string
	Files        []ObjectInfo
}

func CollectDirectoryObjects added in v1.114.0

func CollectDirectoryObjects(basePath string, patterns []string) ([]Directory, error)

type ObjectInfo added in v1.114.0

type ObjectInfo struct {
	FullPath     string
	RelativePath string
	Name         string
	IsDir        bool
}

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
	Logger    *l.Logger
	Stack     string
}

type ProUnlockCmdArgs added in v1.87.0

type ProUnlockCmdArgs struct {
	ProLockUnlockCmdArgs
}

Jump to

Keyboard shortcuts

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