Documentation
¶
Index ¶
- type AWSAuthContext
- type Account
- type Affected
- type ArgsAndFlagsInfo
- type Atlantis
- type AtlantisConfigOutput
- type AtlantisProjectAutoplanConfig
- type AtlantisProjectConfig
- type AtlantisRepoConfig
- type AtmosConfiguration
- func (a *AtmosConfiguration) GetCaseSensitiveMap(path string) map[string]string
- func (m *AtmosConfiguration) GetResourcePath(key string) ResourcePath
- func (m *AtmosConfiguration) GetSchemaRegistry(key string) SchemaRegistry
- func (a *AtmosConfiguration) ProcessSchemas()
- func (m *AtmosConfiguration) UnmarshalYAML(value *yaml.Node) error
- type AtmosSectionMapType
- type AtmosSettings
- type AtmosVendorConfig
- type AtmosVendorMetadata
- type AtmosVendorSource
- type AtmosVendorSpec
- type AuthConfig
- type AuthContext
- type AwsEksUpdateKubeconfigContext
- type AzureAuthContext
- type BackoffStrategy
- type BaseComponentConfig
- type ChromaStyle
- type Command
- type CommandAliases
- type CommandArgument
- type CommandComponentConfig
- type CommandEnv
- type CommandFlag
- type ComponentAuthConfig
- type ComponentManifest
- type Components
- type ConfigAndStacksInfo
- type ConfigMetadata
- type ConfigSources
- type ConfigSourcesItem
- type ConfigSourcesStackDependencies
- type ConfigSourcesStackDependency
- type ConsoleConfig
- type Context
- type Dependent
- type DependsOn
- type Describe
- type DescribeSettings
- type DescribeWorkflowsItem
- type Docs
- type DocsGenerate
- type EditorConfig
- type EnvironmentVariable
- type ErrorFormatConfig
- type ErrorsConfig
- type GithubOIDCSettings
- type Helmfile
- type Identity
- type IdentityVia
- type Instance
- type Integrations
- type KeyringConfig
- type ListColumnConfig
- type ListConfig
- type Logs
- type MarkdownSettings
- type MarkdownStyle
- type MaskSettings
- type Packer
- type Principal
- type ProSettings
- type ProfilesConfig
- type Provider
- type ResourcePath
- type RetryConfig
- type SchemaRegistry
- type SentryConfig
- type SessionConfig
- type Settings
- type SettingsSpacelift
- type ShellConfig
- type StackImport
- type StackLockActionParams
- type Stacks
- type StacksInherit
- type SyntaxHighlighting
- type TelemetrySettings
- type Templates
- type TemplatesSettings
- type TemplatesSettingsGomplate
- type TemplatesSettingsGomplateDatasource
- type TemplatesSettingsSprig
- type Terminal
- type Terraform
- type TerraformDocsReadmeSettings
- type TerraformInit
- type TerraformPlan
- type Validate
- type Validation
- type ValidationItem
- type Vendor
- type VendorComponentConfig
- type VendorComponentMetadata
- type VendorComponentMixins
- type VendorComponentSource
- type VendorComponentSpec
- type Version
- type VersionCheck
- type VersionConstraint
- type WorkflowConfig
- type WorkflowDefinition
- type WorkflowManifest
- type WorkflowStep
- type Workflows
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AWSAuthContext ¶ added in v1.196.0
type AWSAuthContext struct {
// CredentialsFile is the absolute path to the AWS credentials file managed by Atmos.
// Example: /home/user/.atmos/auth/aws-sso/credentials
CredentialsFile string `json:"credentials_file" yaml:"credentials_file"`
// ConfigFile is the absolute path to the AWS config file managed by Atmos.
// Example: /home/user/.atmos/auth/aws-sso/config
ConfigFile string `json:"config_file" yaml:"config_file"`
// Profile is the AWS profile name to use from the credentials file.
// This corresponds to the identity name in Atmos auth config.
Profile string `json:"profile" yaml:"profile"`
// Region is the AWS region (optional, may be empty if not specified in identity).
Region string `json:"region,omitempty" yaml:"region,omitempty"`
}
AWSAuthContext holds AWS-specific authentication context. This is populated by the AWS auth system and consumed by AWS SDK calls.
type Account ¶ added in v1.200.0
type Account struct {
Name string `yaml:"name,omitempty" json:"name,omitempty" mapstructure:"name"`
ID string `yaml:"id,omitempty" json:"id,omitempty" mapstructure:"id"`
}
Account defines account information for a principal.
type Affected ¶
type Affected struct {
Component string `yaml:"component" json:"component" mapstructure:"component"`
ComponentType string `yaml:"component_type" json:"component_type" mapstructure:"component_type"`
ComponentPath string `yaml:"component_path" json:"component_path" mapstructure:"component_path"`
Namespace string `yaml:"namespace,omitempty" json:"namespace,omitempty" mapstructure:"namespace"`
Tenant string `yaml:"tenant,omitempty" json:"tenant,omitempty" mapstructure:"tenant"`
Environment string `yaml:"environment,omitempty" json:"environment,omitempty" mapstructure:"environment"`
Stage string `yaml:"stage,omitempty" json:"stage,omitempty" mapstructure:"stage"`
Stack string `yaml:"stack" json:"stack" mapstructure:"stack"`
StackSlug string `yaml:"stack_slug" json:"stack_slug" mapstructure:"stack_slug"`
SpaceliftStack string `yaml:"spacelift_stack,omitempty" json:"spacelift_stack,omitempty" mapstructure:"spacelift_stack"`
AtlantisProject string `yaml:"atlantis_project,omitempty" json:"atlantis_project,omitempty" mapstructure:"atlantis_project"`
Affected string `yaml:"affected" json:"affected" mapstructure:"affected"`
AffectedAll []string `yaml:"affected_all" json:"affected_all" mapstructure:"affected_all"`
File string `yaml:"file,omitempty" json:"file,omitempty" mapstructure:"file"`
Folder string `yaml:"folder,omitempty" json:"folder,omitempty" mapstructure:"folder"`
Dependents []Dependent `yaml:"dependents" json:"dependents" mapstructure:"dependents"`
IncludedInDependents bool `yaml:"included_in_dependents" json:"included_in_dependents" mapstructure:"included_in_dependents"`
Settings AtmosSectionMapType `yaml:"settings" json:"settings" mapstructure:"settings"`
}
type ArgsAndFlagsInfo ¶
type ArgsAndFlagsInfo struct {
AdditionalArgsAndFlags []string
SubCommand string
SubCommand2 string
ComponentFromArg string
GlobalOptions []string
TerraformCommand string
TerraformDir string
HelmfileCommand string
HelmfileDir string
PackerCommand string
PackerDir string
ConfigDir string
StacksDir string
WorkflowsDir string
BasePath string
VendorBasePath string
DeployRunInit string
InitRunReconfigure string
InitPassVars string
PlanSkipPlanfile string
AutoGenerateBackendFile string
AppendUserAgent string
UseTerraformPlan bool
PlanFile string
DryRun bool
SkipInit bool
NeedHelp bool
JsonSchemaDir string
OpaDir string
CueDir string
AtmosManifestJsonSchema string
RedirectStdErr string
LogsLevel string
LogsFile string
SettingsListMergeStrategy string
Query string
Affected bool
All bool
Identity string
NeedsPathResolution bool // True if ComponentFromArg is a path that needs resolution.
}
type Atlantis ¶
type Atlantis struct {
Path string `yaml:"path,omitempty" json:"path,omitempty" mapstructure:"path"`
ConfigTemplates map[string]AtlantisRepoConfig `yaml:"config_templates,omitempty" json:"config_templates,omitempty" mapstructure:"config_templates"`
ProjectTemplates map[string]AtlantisProjectConfig `yaml:"project_templates,omitempty" json:"project_templates,omitempty" mapstructure:"project_templates"`
WorkflowTemplates AtmosSectionMapType `yaml:"workflow_templates,omitempty" json:"workflow_templates,omitempty" mapstructure:"workflow_templates"`
}
type AtlantisConfigOutput ¶
type AtlantisConfigOutput struct {
Version int `yaml:"version" json:"version" mapstructure:"version"`
Automerge bool `yaml:"automerge" json:"automerge" mapstructure:"automerge"`
DeleteSourceBranchOnMerge bool `` /* 148-byte string literal not displayed */
ParallelPlan bool `yaml:"parallel_plan" json:"parallel_plan" mapstructure:"parallel_plan"`
ParallelApply bool `yaml:"parallel_apply" json:"parallel_apply" mapstructure:"parallel_apply"`
AllowedRegexpPrefixes []string `yaml:"allowed_regexp_prefixes" json:"allowed_regexp_prefixes" mapstructure:"allowed_regexp_prefixes"`
Projects []AtlantisProjectConfig `yaml:"projects" json:"projects" mapstructure:"projects"`
Workflows AtmosSectionMapType `yaml:"workflows,omitempty" json:"workflows,omitempty" mapstructure:"workflows"`
}
type AtlantisProjectConfig ¶
type AtlantisProjectConfig struct {
Name string `yaml:"name" json:"name" mapstructure:"name"`
Workspace string `yaml:"workspace" json:"workspace" mapstructure:"workspace"`
Workflow string `yaml:"workflow,omitempty" json:"workflow,omitempty" mapstructure:"workflow"`
Dir string `yaml:"dir" json:"dir" mapstructure:"dir"`
TerraformVersion string `yaml:"terraform_version,omitempty" json:"terraform_version,omitempty" mapstructure:"terraform_version,omitempty"`
DeleteSourceBranchOnMerge bool `` /* 148-byte string literal not displayed */
Autoplan AtlantisProjectAutoplanConfig `yaml:"autoplan" json:"autoplan" mapstructure:"autoplan"`
ApplyRequirements []string `yaml:"apply_requirements,omitempty" json:"apply_requirements,omitempty" mapstructure:"apply_requirements,omitempty"`
}
type AtlantisRepoConfig ¶
type AtlantisRepoConfig struct {
Version int `yaml:"version" json:"version" mapstructure:"version"`
Automerge bool `yaml:"automerge" json:"automerge" mapstructure:"automerge"`
DeleteSourceBranchOnMerge bool `` /* 148-byte string literal not displayed */
ParallelPlan bool `yaml:"parallel_plan" json:"parallel_plan" mapstructure:"parallel_plan"`
ParallelApply bool `yaml:"parallel_apply" json:"parallel_apply" mapstructure:"parallel_apply"`
AllowedRegexpPrefixes []string `yaml:"allowed_regexp_prefixes" json:"allowed_regexp_prefixes" mapstructure:"allowed_regexp_prefixes"`
}
type AtmosConfiguration ¶ added in v1.131.0
type AtmosConfiguration struct {
BasePath string `yaml:"base_path" json:"base_path" mapstructure:"base_path"`
Components Components `yaml:"components" json:"components" mapstructure:"components"`
Stacks Stacks `yaml:"stacks" json:"stacks" mapstructure:"stacks"`
Workflows Workflows `yaml:"workflows,omitempty" json:"workflows,omitempty" mapstructure:"workflows"`
Logs Logs `yaml:"logs,omitempty" json:"logs,omitempty" mapstructure:"logs"`
Errors ErrorsConfig `yaml:"errors,omitempty" json:"errors,omitempty" mapstructure:"errors"`
Commands []Command `yaml:"commands,omitempty" json:"commands,omitempty" mapstructure:"commands"`
CommandAliases CommandAliases `yaml:"aliases,omitempty" json:"aliases,omitempty" mapstructure:"aliases"`
Integrations Integrations `yaml:"integrations,omitempty" json:"integrations,omitempty" mapstructure:"integrations"`
Schemas map[string]any `yaml:"schemas,omitempty" json:"schemas,omitempty" mapstructure:"schemas"`
Templates Templates `yaml:"templates,omitempty" json:"templates,omitempty" mapstructure:"templates"`
Settings AtmosSettings `yaml:"settings,omitempty" json:"settings,omitempty" mapstructure:"settings"`
Describe Describe `yaml:"describe,omitempty" json:"describe,omitempty" mapstructure:"describe"`
StoresConfig store.StoresConfig `yaml:"stores,omitempty" json:"stores,omitempty" mapstructure:"stores"`
Vendor Vendor `yaml:"vendor,omitempty" json:"vendor,omitempty" mapstructure:"vendor"`
Initialized bool `yaml:"initialized" json:"initialized" mapstructure:"initialized"`
BasePathAbsolute string `yaml:"basePathAbsolute,omitempty" json:"basePathAbsolute,omitempty" mapstructure:"basePathAbsolute"`
StacksBaseAbsolutePath string `yaml:"stacksBaseAbsolutePath,omitempty" json:"stacksBaseAbsolutePath,omitempty" mapstructure:"stacksBaseAbsolutePath"`
IncludeStackAbsolutePaths []string `` /* 126-byte string literal not displayed */
ExcludeStackAbsolutePaths []string `` /* 126-byte string literal not displayed */
TerraformDirAbsolutePath string `yaml:"terraformDirAbsolutePath,omitempty" json:"terraformDirAbsolutePath,omitempty" mapstructure:"terraformDirAbsolutePath"`
HelmfileDirAbsolutePath string `yaml:"helmfileDirAbsolutePath,omitempty" json:"helmfileDirAbsolutePath,omitempty" mapstructure:"helmfileDirAbsolutePath"`
PackerDirAbsolutePath string `yaml:"packerDirAbsolutePath,omitempty" json:"packerDirAbsolutePath,omitempty" mapstructure:"packerDirAbsolutePath"`
StackConfigFilesRelativePaths []string `` /* 138-byte string literal not displayed */
StackConfigFilesAbsolutePaths []string `` /* 138-byte string literal not displayed */
StackType string `yaml:"stackType,omitempty" json:"StackType,omitempty" mapstructure:"stackType"`
Default bool `yaml:"default" json:"default" mapstructure:"default"`
Version Version `yaml:"version,omitempty" json:"version,omitempty" mapstructure:"version"`
Validate Validate `yaml:"validate,omitempty" json:"validate,omitempty" mapstructure:"validate"`
// Stores is never read from yaml, it is populated in processStoreConfig and it's used to pass to the populated store
// registry through to the yaml parsing functions when !store is run and to pass the registry to the hooks
// functions to be able to call stores from within hooks.
Stores store.StoreRegistry `yaml:"stores_registry,omitempty" json:"stores_registry,omitempty" mapstructure:"stores_registry"`
CliConfigPath string `yaml:"cli_config_path" json:"cli_config_path,omitempty" mapstructure:"cli_config_path"`
Import []string `yaml:"import" json:"import" mapstructure:"import"`
Docs Docs `yaml:"docs,omitempty" json:"docs,omitempty" mapstructure:"docs"`
Auth AuthConfig `yaml:"auth,omitempty" json:"auth,omitempty" mapstructure:"auth"`
Env map[string]string `yaml:"env,omitempty" json:"env,omitempty" mapstructure:"-"` // mapstructure:"-" avoids collision with Command.Env []CommandEnv.
CaseMaps *casemap.CaseMaps `yaml:"-" json:"-" mapstructure:"-"` // Stores original case for YAML map keys (Viper lowercases them).
Profiler profiler.Config `yaml:"profiler,omitempty" json:"profiler,omitempty" mapstructure:"profiler"`
TrackProvenance bool `yaml:"track_provenance,omitempty" json:"track_provenance,omitempty" mapstructure:"track_provenance"`
Devcontainer map[string]any `yaml:"devcontainer,omitempty" json:"devcontainer,omitempty" mapstructure:"devcontainer"`
Profiles ProfilesConfig `yaml:"profiles,omitempty" json:"profiles,omitempty" mapstructure:"profiles"`
Metadata ConfigMetadata `yaml:"metadata,omitempty" json:"metadata,omitempty" mapstructure:"metadata"`
}
AtmosConfiguration structure represents schema for `atmos.yaml` CLI config.
func (*AtmosConfiguration) GetCaseSensitiveMap ¶ added in v1.202.0
func (a *AtmosConfiguration) GetCaseSensitiveMap(path string) map[string]string
GetCaseSensitiveMap returns the specified map with original key casing restored. This compensates for Viper lowercasing all YAML map keys. Supported paths: "env".
func (*AtmosConfiguration) GetResourcePath ¶ added in v1.166.0
func (m *AtmosConfiguration) GetResourcePath(key string) ResourcePath
func (*AtmosConfiguration) GetSchemaRegistry ¶ added in v1.166.0
func (m *AtmosConfiguration) GetSchemaRegistry(key string) SchemaRegistry
func (*AtmosConfiguration) ProcessSchemas ¶ added in v1.166.0
func (a *AtmosConfiguration) ProcessSchemas()
func (*AtmosConfiguration) UnmarshalYAML ¶ added in v1.166.0
func (m *AtmosConfiguration) UnmarshalYAML(value *yaml.Node) error
Custom YAML unmarshaler for `Schemas`.
type AtmosSectionMapType ¶ added in v1.88.0
type AtmosSettings ¶ added in v1.131.0
type AtmosSettings struct {
ListMergeStrategy string `yaml:"list_merge_strategy" json:"list_merge_strategy" mapstructure:"list_merge_strategy"`
Terminal Terminal `yaml:"terminal,omitempty" json:"terminal,omitempty" mapstructure:"terminal"`
// Deprecated: this was moved to top-level Atmos config
Docs Docs `yaml:"docs,omitempty" json:"docs,omitempty" mapstructure:"docs"`
Markdown MarkdownSettings `yaml:"markdown,omitempty" json:"markdown,omitempty" mapstructure:"markdown"`
InjectGithubToken bool `yaml:"inject_github_token,omitempty" mapstructure:"inject_github_token"`
GithubToken string `yaml:"github_token,omitempty" mapstructure:"github_token"`
AtmosGithubToken string `yaml:"atmos_github_token,omitempty" mapstructure:"atmos_github_token"`
GithubUsername string `yaml:"github_username,omitempty" mapstructure:"github_username"`
InjectBitbucketToken bool `yaml:"inject_bitbucket_token,omitempty" mapstructure:"inject_bitbucket_token"`
BitbucketToken string `yaml:"bitbucket_token,omitempty" mapstructure:"bitbucket_token"`
AtmosBitbucketToken string `yaml:"atmos_bitbucket_token,omitempty" mapstructure:"atmos_bitbucket_token"`
BitbucketUsername string `yaml:"bitbucket_username,omitempty" mapstructure:"bitbucket_username"`
InjectGitlabToken bool `yaml:"inject_gitlab_token,omitempty" mapstructure:"inject_gitlab_token"`
AtmosGitlabToken string `yaml:"atmos_gitlab_token,omitempty" mapstructure:"atmos_gitlab_token"`
GitlabToken string `yaml:"gitlab_token,omitempty" mapstructure:"gitlab_token"`
// Atmos Pro integration settings
Pro ProSettings `yaml:"pro,omitempty" json:"pro,omitempty" mapstructure:"pro"`
// Telemetry settings
Telemetry TelemetrySettings `yaml:"telemetry,omitempty" json:"telemetry,omitempty" mapstructure:"telemetry"`
}
type AtmosVendorConfig ¶ added in v1.47.0
type AtmosVendorConfig struct {
ApiVersion string `yaml:"apiVersion" json:"apiVersion" mapstructure:"apiVersion"`
Kind string `yaml:"kind" json:"kind" mapstructure:"kind"`
Metadata AtmosVendorMetadata
Spec AtmosVendorSpec `yaml:"spec" json:"spec" mapstructure:"spec"`
}
type AtmosVendorMetadata ¶ added in v1.47.0
type AtmosVendorSource ¶ added in v1.47.0
type AtmosVendorSource struct {
Component string `yaml:"component" json:"component" mapstructure:"component"`
Source string `yaml:"source" json:"source" mapstructure:"source"`
Version string `yaml:"version" json:"version" mapstructure:"version"`
File string `yaml:"file" json:"file" mapstructure:"file"`
Targets []string `yaml:"targets" json:"targets" mapstructure:"targets"`
IncludedPaths []string `yaml:"included_paths,omitempty" json:"included_paths,omitempty" mapstructure:"included_paths"`
ExcludedPaths []string `yaml:"excluded_paths,omitempty" json:"excluded_paths,omitempty" mapstructure:"excluded_paths"`
Tags []string `yaml:"tags" json:"tags" mapstructure:"tags"`
}
type AtmosVendorSpec ¶ added in v1.47.0
type AtmosVendorSpec struct {
Imports []string `yaml:"imports,omitempty" json:"imports,omitempty" mapstructure:"imports"`
Sources []AtmosVendorSource `yaml:"sources" json:"sources" mapstructure:"sources"`
}
type AuthConfig ¶ added in v1.194.0
type AuthConfig struct {
Logs Logs `yaml:"logs,omitempty" json:"logs,omitempty" mapstructure:"logs"`
Keyring KeyringConfig `yaml:"keyring,omitempty" json:"keyring,omitempty" mapstructure:"keyring"`
Providers map[string]Provider `yaml:"providers" json:"providers" mapstructure:"providers"`
Identities map[string]Identity `yaml:"identities" json:"identities" mapstructure:"identities"`
// IdentityCaseMap maps lowercase identity names to their original case.
// This is populated during config loading to work around Viper's case-insensitive behavior.
IdentityCaseMap map[string]string `yaml:"-" json:"-" mapstructure:"-"`
}
AuthConfig defines the authentication configuration structure.
type AuthContext ¶ added in v1.196.0
type AuthContext struct {
// AWS holds AWS credentials if an AWS identity is active.
AWS *AWSAuthContext `json:"aws,omitempty" yaml:"aws,omitempty"`
// Azure holds Azure credentials if an Azure identity is active.
Azure *AzureAuthContext `json:"azure,omitempty" yaml:"azure,omitempty"`
}
AuthContext holds active authentication credentials for multiple providers. This is the SINGLE SOURCE OF TRUTH for auth credentials, populated by the auth system during PostAuthenticate().
AuthContext is used by: 1. In-process SDK calls (e.g., !terraform.state reading from S3) 2. Deriving ComponentEnvSection/ComponentEnvList for spawned processes
It enables multiple cloud provider identities to be active simultaneously (e.g., AWS + GitHub credentials in the same component).
type AzureAuthContext ¶ added in v1.199.0
type AzureAuthContext struct {
// CredentialsFile is the absolute path to the Azure credentials file managed by Atmos.
// Example: /home/user/.azure/atmos/azure-oidc/credentials.json
CredentialsFile string `json:"credentials_file" yaml:"credentials_file"`
// Profile is the Azure profile name to use from the credentials file.
// This corresponds to the identity name in Atmos auth config.
Profile string `json:"profile" yaml:"profile"`
// SubscriptionID is the Azure subscription ID.
SubscriptionID string `json:"subscription_id" yaml:"subscription_id"`
// TenantID is the Azure Active Directory tenant ID.
TenantID string `json:"tenant_id" yaml:"tenant_id"`
// Location is the Azure region/location (optional, e.g., "eastus").
Location string `json:"location,omitempty" yaml:"location,omitempty"`
}
AzureAuthContext holds Azure-specific authentication context. This is populated by the Azure auth system and consumed by Azure SDK calls.
type BackoffStrategy ¶ added in v1.186.0
type BackoffStrategy string
var ( BackoffConstant BackoffStrategy = "constant" BackoffLinear BackoffStrategy = "linear" BackoffExponential BackoffStrategy = "exponential" )
Backoff strategies constants.
type BaseComponentConfig ¶
type BaseComponentConfig struct {
BaseComponentVars AtmosSectionMapType
BaseComponentSettings AtmosSectionMapType
BaseComponentEnv AtmosSectionMapType
BaseComponentAuth AtmosSectionMapType
BaseComponentMetadata AtmosSectionMapType
BaseComponentProviders AtmosSectionMapType
BaseComponentHooks AtmosSectionMapType
FinalBaseComponentName string
BaseComponentCommand string
BaseComponentBackendType string
BaseComponentBackendSection AtmosSectionMapType
BaseComponentRemoteStateBackendType string
BaseComponentRemoteStateBackendSection AtmosSectionMapType
ComponentInheritanceChain []string
}
type ChromaStyle ¶ added in v1.135.0
type ChromaStyle struct {
Color string `yaml:"color,omitempty" json:"color,omitempty" mapstructure:"color"`
}
type Command ¶
type Command struct {
Name string `yaml:"name" json:"name" mapstructure:"name"`
Description string `yaml:"description" json:"description" mapstructure:"description"`
WorkingDirectory string `yaml:"working_directory,omitempty" json:"working_directory,omitempty" mapstructure:"working_directory"`
Env []CommandEnv `yaml:"env" json:"env" mapstructure:"env"`
Arguments []CommandArgument `yaml:"arguments" json:"arguments" mapstructure:"arguments"`
Flags []CommandFlag `yaml:"flags" json:"flags" mapstructure:"flags"`
ComponentConfig CommandComponentConfig `yaml:"component_config" json:"component_config" mapstructure:"component_config"`
Steps []string `yaml:"steps" json:"steps" mapstructure:"steps"`
Commands []Command `yaml:"commands" json:"commands" mapstructure:"commands"`
Verbose bool `yaml:"verbose" json:"verbose" mapstructure:"verbose"`
Identity string `yaml:"identity,omitempty" json:"identity,omitempty" mapstructure:"identity"`
}
type CommandAliases ¶ added in v1.64.2
type CommandArgument ¶
type CommandArgument struct {
Name string `yaml:"name" json:"name" mapstructure:"name"`
Description string `yaml:"description" json:"description" mapstructure:"description"`
Required bool `yaml:"required" json:"required" mapstructure:"required"`
Default string `yaml:"default" json:"default" mapstructure:"default"`
}
type CommandComponentConfig ¶
type CommandEnv ¶
type CommandFlag ¶
type CommandFlag struct {
Name string `yaml:"name" json:"name" mapstructure:"name"`
Shorthand string `yaml:"shorthand" json:"shorthand" mapstructure:"shorthand"`
Type string `yaml:"type" json:"type" mapstructure:"type"`
Description string `yaml:"description" json:"description" mapstructure:"description"`
Usage string `yaml:"usage" json:"usage" mapstructure:"usage"`
Required bool `yaml:"required" json:"required" mapstructure:"required"`
Default any `yaml:"default" json:"default" mapstructure:"default"`
}
type ComponentAuthConfig ¶ added in v1.194.0
type ComponentAuthConfig struct {
Providers map[string]Provider `yaml:"providers,omitempty" json:"providers,omitempty" mapstructure:"providers"`
Identities map[string]Identity `yaml:"identities,omitempty" json:"identities,omitempty" mapstructure:"identities"`
}
ComponentAuthConfig defines auth configuration at the component level.
type ComponentManifest ¶ added in v1.176.0
type ComponentManifest struct {
APIVersion string `yaml:"apiVersion,omitempty" json:"apiVersion,omitempty" mapstructure:"apiVersion"`
Kind string `yaml:"kind,omitempty" json:"kind,omitempty" mapstructure:"kind"`
Metadata map[string]any `yaml:"metadata,omitempty" json:"metadata,omitempty" mapstructure:"metadata"`
Spec map[string]any `yaml:"spec,omitempty" json:"spec,omitempty" mapstructure:"spec"`
Vars map[string]any `yaml:"vars,omitempty" json:"vars,omitempty" mapstructure:"vars"`
}
ComponentManifest defines the structure of the component manifest file (component.yaml).
type Components ¶
type Components struct {
// Built-in component types (legacy - will migrate to plugin model in future phases).
Terraform Terraform `yaml:"terraform" json:"terraform" mapstructure:"terraform"`
Helmfile Helmfile `yaml:"helmfile" json:"helmfile" mapstructure:"helmfile"`
Packer Packer `yaml:"packer" json:"packer" mapstructure:"packer"`
// List configuration for component listing.
List ListConfig `yaml:"list,omitempty" json:"list,omitempty" mapstructure:"list"`
// Dynamic plugin component types.
// Uses mapstructure:",remain" to capture all unmapped fields from the YAML/JSON.
// This allows new component types (like mock, pulumi, cdk) to be added without schema changes.
Plugins map[string]any `yaml:",inline" json:",inline" mapstructure:",remain"`
}
func (*Components) GetComponentConfig ¶ added in v1.196.0
func (c *Components) GetComponentConfig(componentType string) (any, bool)
GetComponentConfig retrieves configuration for any component type. It first checks built-in types (terraform, helmfile, packer) for type-safe access, then falls back to the Plugins map for dynamic component types.
Returns the configuration and true if found, nil and false otherwise.
type ConfigAndStacksInfo ¶
type ConfigAndStacksInfo struct {
StackFromArg string
Stack string
StackFile string
StackManifestName string // Stack-level 'name' override from manifest (highest precedence).
ComponentType string
ComponentFromArg string
Component string
ComponentFolderPrefix string
ComponentFolderPrefixReplaced string
BaseComponentPath string
BaseComponent string
FinalComponent string
Command string
SubCommand string
SubCommand2 string
ComponentSection AtmosSectionMapType
ComponentVarsSection AtmosSectionMapType
ComponentSettingsSection AtmosSectionMapType
ComponentOverridesSection AtmosSectionMapType
ComponentProvidersSection AtmosSectionMapType
ComponentHooksSection AtmosSectionMapType
ComponentEnvSection AtmosSectionMapType
ComponentAuthSection AtmosSectionMapType
ComponentEnvList []string
ComponentBackendSection AtmosSectionMapType
// AuthContext holds active authentication credentials for cloud providers.
// This is the SINGLE SOURCE OF TRUTH for auth credentials.
// ComponentEnvSection/ComponentEnvList are derived from this context.
AuthContext *AuthContext
// AuthManager holds the authentication manager instance used to create AuthContext.
// This is needed for nested operations (e.g., nested !terraform.state functions)
// that require re-authentication or access to the original authentication chain.
//
// Type is 'any' to avoid circular dependency:
// - Using auth.AuthManager would require importing pkg/auth
// - pkg/auth already imports pkg/schema (for ConfigAndStacksInfo)
// - This would create: schema → auth → schema (circular dependency error)
// - Type assertions are used at usage sites to recover type safety
AuthManager any
ComponentBackendType string
AdditionalArgsAndFlags []string
GlobalOptions []string
BasePath string
VendorBasePathFlag string
TerraformCommand string
TerraformDir string
HelmfileCommand string
HelmfileDir string
PackerCommand string
PackerDir string
ConfigDir string
StacksDir string
WorkflowsDir string
Context Context
ContextPrefix string
DeployRunInit string
InitRunReconfigure string
InitPassVars string
PlanSkipPlanfile string
AutoGenerateBackendFile string
UseTerraformPlan bool
PlanFile string
DryRun bool
SkipInit bool
ComponentInheritanceChain []string
ComponentImportsSection []string
NeedHelp bool
ComponentIsAbstract bool
ComponentIsEnabled bool
ComponentIsLocked bool
ComponentMetadataSection AtmosSectionMapType
TerraformWorkspace string
JsonSchemaDir string
OpaDir string
CueDir string
AtmosManifestJsonSchema string
AtmosCliConfigPath string
AtmosBasePath string
ProfilesFromArg []string
RedirectStdErr string
LogsLevel string
LogsFile string
SettingsListMergeStrategy string
Query string
AtmosConfigFilesFromArg []string
AtmosConfigDirsFromArg []string
ProcessTemplates bool
ProcessFunctions bool
Skip []string
CliArgs []string
Affected bool
All bool
Components []string
Identity string
NeedsPathResolution bool // True if ComponentFromArg is a path that needs resolution.
}
func (*ConfigAndStacksInfo) GetComponentEnvSection ¶ added in v1.199.0
func (c *ConfigAndStacksInfo) GetComponentEnvSection() map[string]any
GetComponentEnvSection returns the component's env section map. This implements the utils.EnvVarContext interface.
type ConfigMetadata ¶ added in v1.199.0
type ConfigMetadata struct {
// Name is the name of the configuration or profile.
Name string `yaml:"name,omitempty" json:"name,omitempty" mapstructure:"name"`
// Description is a human-readable description.
Description string `yaml:"description,omitempty" json:"description,omitempty" mapstructure:"description"`
// Version is the semantic version of the configuration.
Version string `yaml:"version,omitempty" json:"version,omitempty" mapstructure:"version"`
// Tags are labels for filtering and organization.
Tags []string `yaml:"tags,omitempty" json:"tags,omitempty" mapstructure:"tags"`
// Deprecated indicates if this configuration should no longer be used.
Deprecated bool `yaml:"deprecated,omitempty" json:"deprecated,omitempty" mapstructure:"deprecated"`
}
ConfigMetadata contains metadata about a configuration file or profile.
type ConfigSources ¶ added in v1.42.0
type ConfigSources map[string]map[string]ConfigSourcesItem
type ConfigSourcesItem ¶ added in v1.42.0
type ConfigSourcesItem struct {
FinalValue any `yaml:"final_value" json:"final_value" mapstructure:"final_value"`
Name string `yaml:"name" json:"name" mapstructure:"name"`
StackDependencies ConfigSourcesStackDependencies `yaml:"stack_dependencies" json:"stack_dependencies" mapstructure:"stack_dependencies"`
}
type ConfigSourcesStackDependencies ¶ added in v1.42.0
type ConfigSourcesStackDependencies []ConfigSourcesStackDependency
type ConfigSourcesStackDependency ¶ added in v1.42.0
type ConfigSourcesStackDependency struct {
StackFile string `yaml:"stack_file" json:"stack_file" mapstructure:"stack_file"`
StackFileSection string `yaml:"stack_file_section" json:"stack_file_section" mapstructure:"stack_file_section"`
DependencyType string `yaml:"dependency_type" json:"dependency_type" mapstructure:"dependency_type"`
VariableValue any `yaml:"variable_value" json:"variable_value" mapstructure:"variable_value"`
}
ConfigSourcesStackDependency defines schema for sources of config sections.
type ConsoleConfig ¶ added in v1.196.0
type ConsoleConfig struct {
SessionDuration string `yaml:"session_duration,omitempty" json:"session_duration,omitempty" mapstructure:"session_duration"` // Duration string (e.g., "12h"). Max: 12h for AWS.
}
ConsoleConfig defines web console access configuration for providers.
type Context ¶
type Context struct {
Namespace string `yaml:"namespace" json:"namespace" mapstructure:"namespace"`
Tenant string `yaml:"tenant" json:"tenant" mapstructure:"tenant"`
Environment string `yaml:"environment" json:"environment" mapstructure:"environment"`
Stage string `yaml:"stage" json:"stage" mapstructure:"stage"`
Region string `yaml:"region" json:"region" mapstructure:"region"`
Component string `yaml:"component" json:"component" mapstructure:"component"`
BaseComponent string `yaml:"base_component" json:"base_component" mapstructure:"base_component"`
ComponentPath string `yaml:"component_path" json:"component_path" mapstructure:"component_path"`
Workspace string `yaml:"workspace" json:"workspace" mapstructure:"workspace"`
Attributes []any `yaml:"attributes" json:"attributes" mapstructure:"attributes"`
File string `yaml:"file" json:"file" mapstructure:"file"`
Folder string `yaml:"folder" json:"folder" mapstructure:"folder"`
TerraformWorkspace string `yaml:"terraform_workspace" json:"terraform_workspace" mapstructure:"terraform_workspace"`
Stack string `yaml:"stack" json:"stack" mapstructure:"stack"`
}
type Dependent ¶ added in v1.33.2
type Dependent struct {
Component string `yaml:"component" json:"component" mapstructure:"component"`
ComponentType string `yaml:"component_type" json:"component_type" mapstructure:"component_type"`
ComponentPath string `yaml:"component_path" json:"component_path" mapstructure:"component_path"`
Namespace string `yaml:"namespace,omitempty" json:"namespace,omitempty" mapstructure:"namespace"`
Tenant string `yaml:"tenant,omitempty" json:"tenant,omitempty" mapstructure:"tenant"`
Environment string `yaml:"environment,omitempty" json:"environment,omitempty" mapstructure:"environment"`
Stage string `yaml:"stage,omitempty" json:"stage,omitempty" mapstructure:"stage"`
Stack string `yaml:"stack" json:"stack" mapstructure:"stack"`
StackSlug string `yaml:"stack_slug" json:"stack_slug" mapstructure:"stack_slug"`
SpaceliftStack string `yaml:"spacelift_stack,omitempty" json:"spacelift_stack,omitempty" mapstructure:"spacelift_stack"`
AtlantisProject string `yaml:"atlantis_project,omitempty" json:"atlantis_project,omitempty" mapstructure:"atlantis_project"`
Dependents []Dependent `yaml:"dependents" json:"dependents" mapstructure:"dependents"`
IncludedInDependents bool `yaml:"included_in_dependents" json:"included_in_dependents" mapstructure:"included_in_dependents"`
Settings AtmosSectionMapType `yaml:"settings" json:"settings" mapstructure:"settings"`
}
type Describe ¶ added in v1.176.0
type Describe struct {
Settings DescribeSettings `yaml:"settings,omitempty" json:"settings,omitempty" mapstructure:"settings"`
}
Describe contains configuration for the describe command.
type DescribeSettings ¶ added in v1.176.0
type DescribeSettings struct {
IncludeEmpty *bool `yaml:"include_empty,omitempty" json:"include_empty,omitempty" mapstructure:"include_empty"`
}
DescribeSettings contains settings for the describe command output.
type DescribeWorkflowsItem ¶ added in v1.55.0
type Docs ¶ added in v1.103.0
type Docs struct {
// Deprecated: this has moved to `settings.terminal.max-width`
MaxWidth int `yaml:"max-width" json:"max_width" mapstructure:"max-width"`
// Deprecated: this has moved to `settings.terminal.pagination`
Pagination bool `yaml:"pagination" json:"pagination" mapstructure:"pagination"`
Generate map[string]DocsGenerate `yaml:"generate,omitempty" json:"generate,omitempty" mapstructure:"generate"`
}
type DocsGenerate ¶ added in v1.175.0
type DocsGenerate struct {
BaseDir string `yaml:"base-dir,omitempty" json:"base-dir,omitempty" mapstructure:"base-dir"`
Input []any `yaml:"input,omitempty" json:"input,omitempty" mapstructure:"input"`
Template string `yaml:"template,omitempty" json:"template,omitempty" mapstructure:"template"`
Output string `yaml:"output,omitempty" json:"output,omitempty" mapstructure:"output"`
Terraform TerraformDocsReadmeSettings `yaml:"terraform,omitempty" json:"terraform,omitempty" mapstructure:"terraform"`
}
type EditorConfig ¶ added in v1.151.0
type EditorConfig struct {
IgnoreDefaults bool `yaml:"ignore_defaults,omitempty" json:"ignore_defaults,omitempty" mapstructure:"ignore_defaults"`
DryRun bool `yaml:"dry_run,omitempty" json:"dry_run,omitempty" mapstructure:"dry_run"`
Format string `yaml:"format,omitempty" json:"format,omitempty" mapstructure:"format"`
ConfigFilePaths []string `yaml:"config_file_paths,omitempty" json:"config_file_paths,omitempty" mapstructure:"config_file_paths"`
Exclude []string `yaml:"exclude,omitempty" json:"exclude,omitempty" mapstructure:"exclude"`
Init bool `yaml:"init,omitempty" json:"init,omitempty" mapstructure:"init"`
DisableEndOfLine bool `yaml:"disable_end_of_line,omitempty" json:"disable_end_of_line,omitempty" mapstructure:"disable_end_of_line"`
DisableInsertFinalNewline bool `` /* 135-byte string literal not displayed */
DisableIndentation bool `yaml:"disable_indentation,omitempty" json:"disable_indentation,omitempty" mapstructure:"disable_indentation"`
DisableIndentSize bool `yaml:"disable_indent_size,omitempty" json:"disable_indent_size,omitempty" mapstructure:"disable_indent_size"`
DisableMaxLineLength bool `yaml:"disable_max_line_length,omitempty" json:"disable_max_line_length,omitempty" mapstructure:"disable_max_line_length"`
DisableTrimTrailingWhitespace bool `` /* 147-byte string literal not displayed */
}
type EnvironmentVariable ¶ added in v1.194.0
type EnvironmentVariable struct {
Key string `yaml:"key" json:"key" mapstructure:"key"`
Value string `yaml:"value" json:"value" mapstructure:"value"`
}
EnvironmentVariable defines an environment variable with preserved case sensitivity.
type ErrorFormatConfig ¶ added in v1.199.0
type ErrorFormatConfig struct {
Verbose bool `yaml:"verbose,omitempty" json:"verbose,omitempty" mapstructure:"verbose"`
}
ErrorFormatConfig contains formatting options for errors.
type ErrorsConfig ¶ added in v1.199.0
type ErrorsConfig struct {
Format ErrorFormatConfig `yaml:"format,omitempty" json:"format,omitempty" mapstructure:"format"`
Sentry SentryConfig `yaml:"sentry,omitempty" json:"sentry,omitempty" mapstructure:"sentry"`
}
ErrorsConfig contains configuration for error handling.
type GithubOIDCSettings ¶ added in v1.180.0
type GithubOIDCSettings struct {
RequestURL string `yaml:"request_url,omitempty" json:"request_url,omitempty" mapstructure:"request_url"`
RequestToken string `yaml:"request_token,omitempty" json:"request_token,omitempty" mapstructure:"request_token"`
}
GithubOIDCSettings contains GitHub OIDC token configuration.
type Helmfile ¶
type Helmfile struct {
BasePath string `yaml:"base_path" json:"base_path" mapstructure:"base_path"`
UseEKS bool `yaml:"use_eks" json:"use_eks" mapstructure:"use_eks"`
KubeconfigPath string `yaml:"kubeconfig_path" json:"kubeconfig_path" mapstructure:"kubeconfig_path"`
HelmAwsProfilePattern string `yaml:"helm_aws_profile_pattern" json:"helm_aws_profile_pattern" mapstructure:"helm_aws_profile_pattern"`
ClusterNamePattern string `yaml:"cluster_name_pattern" json:"cluster_name_pattern" mapstructure:"cluster_name_pattern"`
Command string `yaml:"command" json:"command" mapstructure:"command"`
}
type Identity ¶ added in v1.194.0
type Identity struct {
Kind string `yaml:"kind" json:"kind" mapstructure:"kind"`
Default bool `yaml:"default,omitempty" json:"default,omitempty" mapstructure:"default"`
Provider string `yaml:"provider,omitempty" json:"provider,omitempty" mapstructure:"provider"` // Provider name for direct provider association (for provisioned identities).
Via *IdentityVia `yaml:"via,omitempty" json:"via,omitempty" mapstructure:"via"`
Principal map[string]interface{} `yaml:"principal,omitempty" json:"principal,omitempty" mapstructure:"principal"` // Principal information (role name, account, etc.). For AWS permission sets: {name: string, account: {name: string, id: string}}.
Credentials map[string]interface{} `yaml:"credentials,omitempty" json:"credentials,omitempty" mapstructure:"credentials"`
Alias string `yaml:"alias,omitempty" json:"alias,omitempty" mapstructure:"alias"`
Env []EnvironmentVariable `yaml:"env,omitempty" json:"env,omitempty" mapstructure:"env"`
Session *SessionConfig `yaml:"session,omitempty" json:"session,omitempty" mapstructure:"session"`
}
Identity defines an authentication identity configuration.
type IdentityVia ¶ added in v1.194.0
type IdentityVia struct {
Provider string `yaml:"provider,omitempty" json:"provider,omitempty" mapstructure:"provider"`
Identity string `yaml:"identity,omitempty" json:"identity,omitempty" mapstructure:"identity"`
}
IdentityVia defines how an identity connects to a provider or other identity.
type Instance ¶ added in v1.192.0
type Instance struct {
Component string `yaml:"component" json:"component" mapstructure:"component"`
Stack string `yaml:"stack" json:"stack" mapstructure:"stack"`
ComponentType string `yaml:"component_type" json:"component_type" mapstructure:"component_type"`
Settings AtmosSectionMapType `yaml:"settings" json:"settings" mapstructure:"settings"`
Vars AtmosSectionMapType `yaml:"vars" json:"vars" mapstructure:"vars"`
Env AtmosSectionMapType `yaml:"env" json:"env" mapstructure:"env"`
Backend AtmosSectionMapType `yaml:"backend" json:"backend" mapstructure:"backend"`
Metadata AtmosSectionMapType `yaml:"metadata" json:"metadata" mapstructure:"metadata"`
}
Instance represents an instance of a component for a specific stack.
type Integrations ¶
type Integrations struct {
Atlantis Atlantis `yaml:"atlantis,omitempty" json:"atlantis,omitempty" mapstructure:"atlantis"`
GitHub AtmosSectionMapType `yaml:"github,omitempty" json:"github,omitempty" mapstructure:"github"`
Pro AtmosSectionMapType `yaml:"pro,omitempty" json:"pro,omitempty" mapstructure:"pro"`
}
type KeyringConfig ¶ added in v1.196.0
type KeyringConfig struct {
Type string `yaml:"type,omitempty" json:"type,omitempty" mapstructure:"type"` // "system", "file", or "memory"
Spec map[string]interface{} `yaml:"spec,omitempty" json:"spec,omitempty" mapstructure:"spec"` // Type-specific configuration
}
KeyringConfig defines keyring backend configuration for credential storage.
type ListColumnConfig ¶ added in v1.155.0
type ListConfig ¶ added in v1.155.0
type ListConfig struct {
// Format specifies the output format (table, json, csv)
// If empty, defaults to table format
Format string `yaml:"format" json:"format" mapstructure:"format" validate:"omitempty,oneof=table json csv"`
Columns []ListColumnConfig `yaml:"columns" json:"columns" mapstructure:"columns"`
}
type MarkdownSettings ¶ added in v1.135.0
type MarkdownSettings struct {
Document MarkdownStyle `yaml:"document,omitempty" json:"document,omitempty" mapstructure:"document"`
BlockQuote MarkdownStyle `yaml:"block_quote,omitempty" json:"block_quote,omitempty" mapstructure:"block_quote"`
Paragraph MarkdownStyle `yaml:"paragraph,omitempty" json:"paragraph,omitempty" mapstructure:"paragraph"`
List MarkdownStyle `yaml:"list,omitempty" json:"list,omitempty" mapstructure:"list"`
ListItem MarkdownStyle `yaml:"list_item,omitempty" json:"list_item,omitempty" mapstructure:"list_item"`
Heading MarkdownStyle `yaml:"heading,omitempty" json:"heading,omitempty" mapstructure:"heading"`
H1 MarkdownStyle `yaml:"h1,omitempty" json:"h1,omitempty" mapstructure:"h1"`
H2 MarkdownStyle `yaml:"h2,omitempty" json:"h2,omitempty" mapstructure:"h2"`
H3 MarkdownStyle `yaml:"h3,omitempty" json:"h3,omitempty" mapstructure:"h3"`
H4 MarkdownStyle `yaml:"h4,omitempty" json:"h4,omitempty" mapstructure:"h4"`
H5 MarkdownStyle `yaml:"h5,omitempty" json:"h5,omitempty" mapstructure:"h5"`
H6 MarkdownStyle `yaml:"h6,omitempty" json:"h6,omitempty" mapstructure:"h6"`
Text MarkdownStyle `yaml:"text,omitempty" json:"text,omitempty" mapstructure:"text"`
Strong MarkdownStyle `yaml:"strong,omitempty" json:"strong,omitempty" mapstructure:"strong"`
Emph MarkdownStyle `yaml:"emph,omitempty" json:"emph,omitempty" mapstructure:"emph"`
Hr MarkdownStyle `yaml:"hr,omitempty" json:"hr,omitempty" mapstructure:"hr"`
Item MarkdownStyle `yaml:"item,omitempty" json:"item,omitempty" mapstructure:"item"`
Enumeration MarkdownStyle `yaml:"enumeration,omitempty" json:"enumeration,omitempty" mapstructure:"enumeration"`
Code MarkdownStyle `yaml:"code,omitempty" json:"code,omitempty" mapstructure:"code"`
CodeBlock MarkdownStyle `yaml:"code_block,omitempty" json:"code_block,omitempty" mapstructure:"code_block"`
Table MarkdownStyle `yaml:"table,omitempty" json:"table,omitempty" mapstructure:"table"`
DefinitionList MarkdownStyle `yaml:"definition_list,omitempty" json:"definition_list,omitempty" mapstructure:"definition_list"`
DefinitionTerm MarkdownStyle `yaml:"definition_term,omitempty" json:"definition_term,omitempty" mapstructure:"definition_term"`
DefinitionDescription MarkdownStyle `yaml:"definition_description,omitempty" json:"definition_description,omitempty" mapstructure:"definition_description"`
HtmlBlock MarkdownStyle `yaml:"html_block,omitempty" json:"html_block,omitempty" mapstructure:"html_block"`
HtmlSpan MarkdownStyle `yaml:"html_span,omitempty" json:"html_span,omitempty" mapstructure:"html_span"`
Link MarkdownStyle `yaml:"link,omitempty" json:"link,omitempty" mapstructure:"link"`
LinkText MarkdownStyle `yaml:"link_text,omitempty" json:"link_text,omitempty" mapstructure:"link_text"`
}
type MarkdownStyle ¶ added in v1.135.0
type MarkdownStyle struct {
BlockPrefix string `yaml:"block_prefix,omitempty" json:"block_prefix,omitempty" mapstructure:"block_prefix"`
BlockSuffix string `yaml:"block_suffix,omitempty" json:"block_suffix,omitempty" mapstructure:"block_suffix"`
Color string `yaml:"color,omitempty" json:"color,omitempty" mapstructure:"color"`
BackgroundColor string `yaml:"background_color,omitempty" json:"background_color,omitempty" mapstructure:"background_color"`
Bold bool `yaml:"bold,omitempty" json:"bold,omitempty" mapstructure:"bold"`
Italic bool `yaml:"italic,omitempty" json:"italic,omitempty" mapstructure:"italic"`
Underline bool `yaml:"underline,omitempty" json:"underline,omitempty" mapstructure:"underline"`
Margin int `yaml:"margin,omitempty" json:"margin,omitempty" mapstructure:"margin"`
Padding int `yaml:"padding,omitempty" json:"padding,omitempty" mapstructure:"padding"`
Indent int `yaml:"indent,omitempty" json:"indent,omitempty" mapstructure:"indent"`
IndentToken string `yaml:"indent_token,omitempty" json:"indent_token,omitempty" mapstructure:"indent_token"`
LevelIndent int `yaml:"level_indent,omitempty" json:"level_indent,omitempty" mapstructure:"level_indent"`
Format string `yaml:"format,omitempty" json:"format,omitempty" mapstructure:"format"`
Prefix string `yaml:"prefix,omitempty" json:"prefix,omitempty" mapstructure:"prefix"`
StyleOverride bool `yaml:"style_override,omitempty" json:"style_override,omitempty" mapstructure:"style_override"`
Chroma map[string]ChromaStyle `yaml:"chroma,omitempty" json:"chroma,omitempty" mapstructure:"chroma"`
}
type MaskSettings ¶ added in v1.198.0
type MaskSettings struct {
Enabled bool `yaml:"enabled" json:"enabled" mapstructure:"enabled"`
Replacement string `yaml:"replacement,omitempty" json:"replacement,omitempty" mapstructure:"replacement"` // Custom replacement string (default: ***MASKED***)
Patterns []string `yaml:"patterns,omitempty" json:"patterns,omitempty" mapstructure:"patterns"` // Custom regex patterns to mask
Literals []string `yaml:"literals,omitempty" json:"literals,omitempty" mapstructure:"literals"` // Custom literal values to mask
}
MaskSettings contains configuration for sensitive data masking.
type Principal ¶ added in v1.200.0
type Principal struct {
Name string `yaml:"name,omitempty" json:"name,omitempty" mapstructure:"name"`
Account *Account `yaml:"account,omitempty" json:"account,omitempty" mapstructure:"account"`
}
Principal defines the principal information for an identity (for provisioned identities). This is a helper struct for creating provisioned identities programmatically.
type ProSettings ¶ added in v1.180.0
type ProSettings struct {
BaseURL string `yaml:"base_url,omitempty" json:"base_url,omitempty" mapstructure:"base_url"`
Endpoint string `yaml:"endpoint,omitempty" json:"endpoint,omitempty" mapstructure:"endpoint"`
Token string `yaml:"token,omitempty" json:"token,omitempty" mapstructure:"token"`
WorkspaceID string `yaml:"workspace_id,omitempty" json:"workspace_id,omitempty" mapstructure:"workspace_id"`
GithubOIDC GithubOIDCSettings `yaml:"github_oidc,omitempty" json:"github_oidc,omitempty" mapstructure:"github_oidc"`
}
ProSettings contains Atmos Pro integration configuration.
type ProfilesConfig ¶ added in v1.199.0
type ProfilesConfig struct {
// BasePath is the custom directory for profile storage.
// If relative, resolved from atmos.yaml directory.
// If absolute, used as-is.
BasePath string `yaml:"base_path,omitempty" json:"base_path,omitempty" mapstructure:"base_path"`
}
ProfilesConfig defines configuration for the profiles system.
type Provider ¶ added in v1.194.0
type Provider struct {
Kind string `yaml:"kind" json:"kind" mapstructure:"kind"`
StartURL string `yaml:"start_url,omitempty" json:"start_url,omitempty" mapstructure:"start_url"`
URL string `yaml:"url,omitempty" json:"url,omitempty" mapstructure:"url"`
Region string `yaml:"region,omitempty" json:"region,omitempty" mapstructure:"region"`
Username string `yaml:"username,omitempty" json:"username,omitempty" mapstructure:"username"`
Password string `yaml:"password,omitempty" json:"password,omitempty" mapstructure:"password"`
Driver string `yaml:"driver,omitempty" json:"driver,omitempty" mapstructure:"driver"`
ProviderType string `yaml:"provider_type,omitempty" json:"provider_type,omitempty" mapstructure:"provider_type"` // Deprecated: use driver.
DownloadBrowserDriver bool `yaml:"download_browser_driver,omitempty" json:"download_browser_driver,omitempty" mapstructure:"download_browser_driver"`
AutoProvisionIdentities *bool `` /* 126-byte string literal not displayed */
Session *SessionConfig `yaml:"session,omitempty" json:"session,omitempty" mapstructure:"session"`
Console *ConsoleConfig `yaml:"console,omitempty" json:"console,omitempty" mapstructure:"console"`
Default bool `yaml:"default,omitempty" json:"default,omitempty" mapstructure:"default"`
Spec map[string]interface{} `yaml:"spec,omitempty" json:"spec,omitempty" mapstructure:"spec"`
}
Provider defines an authentication provider configuration.
type ResourcePath ¶ added in v1.166.0
type ResourcePath struct {
BasePath string `yaml:"base_path,omitempty" json:"base_path,omitempty" mapstructure:"base_path"`
}
type RetryConfig ¶ added in v1.186.0
type RetryConfig struct {
MaxAttempts int `yaml:"max_attempts" json:"max_attempts" mapstructure:"max_attempts"`
BackoffStrategy BackoffStrategy `yaml:"backoff_strategy" json:"backoff_strategy" mapstructure:"backoff_strategy"`
InitialDelay time.Duration `yaml:"initial_delay" json:"initial_delay" mapstructure:"initial_delay"`
MaxDelay time.Duration `yaml:"max_delay" json:"max_delay" mapstructure:"max_delay"`
RandomJitter float64 `yaml:"random_jitter" json:"random_jitter" mapstructure:"random_jitter"`
Multiplier float64 `yaml:"multiplier" json:"multiplier" mapstructure:"multiplier"`
MaxElapsedTime time.Duration `yaml:"max_elapsed_time" json:"max_elapsed_time" mapstructure:"max_elapsed_time"`
}
RetryConfig represents the retry configuration.
type SchemaRegistry ¶ added in v1.166.0
type SchemaRegistry struct {
Manifest string `yaml:"manifest,omitempty" json:"manifest,omitempty" mapstructure:"manifest"`
Schema string `yaml:"schema,omitempty" json:"schema,omitempty" mapstructure:"schema"`
Matches []string `yaml:"matches,omitempty" json:"matches,omitempty" mapstructure:"matches"`
}
type SentryConfig ¶ added in v1.199.0
type SentryConfig struct {
Enabled bool `yaml:"enabled" json:"enabled" mapstructure:"enabled"`
DSN string `yaml:"dsn" json:"dsn" mapstructure:"dsn"`
Environment string `yaml:"environment,omitempty" json:"environment,omitempty" mapstructure:"environment"`
Release string `yaml:"release,omitempty" json:"release,omitempty" mapstructure:"release"`
SampleRate float64 `yaml:"sample_rate,omitempty" json:"sample_rate,omitempty" mapstructure:"sample_rate"`
Debug bool `yaml:"debug,omitempty" json:"debug,omitempty" mapstructure:"debug"`
Tags map[string]string `yaml:"tags,omitempty" json:"tags,omitempty" mapstructure:"tags"`
CaptureStackContext bool `yaml:"capture_stack_context,omitempty" json:"capture_stack_context,omitempty" mapstructure:"capture_stack_context"`
}
SentryConfig contains Sentry error reporting configuration.
type SessionConfig ¶ added in v1.194.0
type SessionConfig struct {
Duration string `yaml:"duration,omitempty" json:"duration,omitempty" mapstructure:"duration"`
}
SessionConfig defines session configuration for providers.
type Settings ¶
type Settings struct {
DependsOn DependsOn `yaml:"depends_on,omitempty" json:"depends_on,omitempty" mapstructure:"depends_on"`
Spacelift SettingsSpacelift `yaml:"spacelift,omitempty" json:"spacelift,omitempty" mapstructure:"spacelift"`
Templates Templates `yaml:"templates,omitempty" json:"templates,omitempty" mapstructure:"templates"`
}
type SettingsSpacelift ¶ added in v1.37.0
type SettingsSpacelift AtmosSectionMapType
type ShellConfig ¶ added in v1.107.0
type ShellConfig struct {
Prompt string `yaml:"prompt" json:"prompt" mapstructure:"prompt"`
}
type StackImport ¶
type StackImport struct {
Path string `yaml:"path" json:"path" mapstructure:"path"`
Context AtmosSectionMapType `yaml:"context" json:"context" mapstructure:"context"`
SkipTemplatesProcessing bool `` /* 126-byte string literal not displayed */
IgnoreMissingTemplateValues bool `` /* 141-byte string literal not displayed */
SkipIfMissing bool `yaml:"skip_if_missing,omitempty" json:"skip_if_missing,omitempty" mapstructure:"skip_if_missing"`
}
type StackLockActionParams ¶ added in v1.192.0
type StackLockActionParams struct {
Method string `yaml:"method,omitempty" json:"method,omitempty" mapstructure:"method"`
URL string `yaml:"url,omitempty" json:"url,omitempty" mapstructure:"url"`
Body any `yaml:"body,omitempty" json:"body,omitempty" mapstructure:"body"`
Out any `yaml:"out,omitempty" json:"out,omitempty" mapstructure:"out"`
Op string `yaml:"op,omitempty" json:"op,omitempty" mapstructure:"op"`
WrapErr error `yaml:"wrap_err,omitempty" json:"wrap_err,omitempty" mapstructure:"wrap_err"`
}
StackLockActionParams holds the parameters for stack lock/unlock operations.
type Stacks ¶
type Stacks struct {
BasePath string `yaml:"base_path" json:"base_path" mapstructure:"base_path"`
IncludedPaths []string `yaml:"included_paths" json:"included_paths" mapstructure:"included_paths"`
ExcludedPaths []string `yaml:"excluded_paths" json:"excluded_paths" mapstructure:"excluded_paths"`
NamePattern string `yaml:"name_pattern" json:"name_pattern" mapstructure:"name_pattern"`
NameTemplate string `yaml:"name_template" json:"name_template" mapstructure:"name_template"`
List ListConfig `yaml:"list,omitempty" json:"list,omitempty" mapstructure:"list"`
Inherit StacksInherit `yaml:"inherit,omitempty" json:"inherit,omitempty" mapstructure:"inherit"`
}
type StacksInherit ¶ added in v1.201.0
type StacksInherit struct {
// Metadata controls whether metadata fields are inherited from base components.
// When true (default), all metadata fields except 'inherits' are inherited.
// When false, metadata is per-component only (legacy behavior).
Metadata *bool `yaml:"metadata,omitempty" json:"metadata,omitempty" mapstructure:"metadata"`
}
StacksInherit controls inheritance behavior for stack processing.
func (*StacksInherit) IsMetadataInheritanceEnabled ¶ added in v1.201.0
func (s *StacksInherit) IsMetadataInheritanceEnabled() bool
IsMetadataInheritanceEnabled returns whether metadata inheritance is enabled. Defaults to true if not explicitly set.
type SyntaxHighlighting ¶ added in v1.148.0
type SyntaxHighlighting struct {
Enabled bool `yaml:"enabled" json:"enabled" mapstructure:"enabled"`
Lexer string `yaml:"lexer" json:"lexer" mapstructure:"lexer"`
Formatter string `yaml:"formatter" json:"formatter" mapstructure:"formatter"`
Theme string `yaml:"theme" json:"theme" mapstructure:"theme"`
LineNumbers bool `yaml:"line_numbers" json:"line_numbers" mapstructure:"line_numbers"`
Wrap bool `yaml:"wrap" json:"wrap" mapstructure:"wrap"`
}
type TelemetrySettings ¶ added in v1.183.0
type TelemetrySettings struct {
Enabled bool `yaml:"enabled,omitempty" json:"enabled,omitempty" mapstructure:"enabled"`
Endpoint string `yaml:"endpoint,omitempty" json:"endpoint,omitempty" mapstructure:"endpoint"`
Token string `yaml:"token,omitempty" json:"token,omitempty" mapstructure:"token"`
Logging bool `yaml:"logging" json:"logging" mapstructure:"logging"`
}
TelemetrySettings contains configuration for telemetry collection.
type Templates ¶ added in v1.68.0
type Templates struct {
Settings TemplatesSettings `yaml:"settings" json:"settings" mapstructure:"settings"`
}
type TemplatesSettings ¶ added in v1.68.0
type TemplatesSettings struct {
Enabled bool `yaml:"enabled" json:"enabled" mapstructure:"enabled"`
Sprig TemplatesSettingsSprig `yaml:"sprig" json:"sprig" mapstructure:"sprig"`
Gomplate TemplatesSettingsGomplate `yaml:"gomplate" json:"gomplate" mapstructure:"gomplate"`
Delimiters []string `yaml:"delimiters,omitempty" json:"delimiters,omitempty" mapstructure:"delimiters"`
Evaluations int `yaml:"evaluations,omitempty" json:"evaluations,omitempty" mapstructure:"evaluations"`
Env map[string]string `yaml:"env,omitempty" json:"env,omitempty" mapstructure:"-"` // mapstructure:"-" avoids collision with Command.Env []CommandEnv.
}
type TemplatesSettingsGomplate ¶ added in v1.68.0
type TemplatesSettingsGomplate struct {
Enabled bool `yaml:"enabled" json:"enabled" mapstructure:"enabled"`
Timeout int `yaml:"timeout" json:"timeout" mapstructure:"timeout"`
Datasources map[string]TemplatesSettingsGomplateDatasource `yaml:"datasources" json:"datasources" mapstructure:"datasources"`
}
type TemplatesSettingsGomplateDatasource ¶ added in v1.70.0
type TemplatesSettingsSprig ¶ added in v1.68.0
type TemplatesSettingsSprig struct {
Enabled bool `yaml:"enabled" json:"enabled" mapstructure:"enabled"`
}
type Terminal ¶ added in v1.135.0
type Terminal struct {
MaxWidth int `yaml:"max_width" json:"max_width" mapstructure:"max_width"`
Pager string `yaml:"pager" json:"pager" mapstructure:"pager"`
Unicode bool `yaml:"unicode" json:"unicode" mapstructure:"unicode"`
SyntaxHighlighting SyntaxHighlighting `yaml:"syntax_highlighting" json:"syntax_highlighting" mapstructure:"syntax_highlighting"`
Color bool `yaml:"color" json:"color" mapstructure:"color"`
NoColor bool `yaml:"no_color" json:"no_color" mapstructure:"no_color"` // Deprecated in config, use Color instead
ForceColor bool `yaml:"-" json:"-" mapstructure:"force_color"` // ENV-only: ATMOS_FORCE_COLOR
TabWidth int `yaml:"tab_width,omitempty" json:"tab_width,omitempty" mapstructure:"tab_width"`
Title bool `yaml:"title,omitempty" json:"title,omitempty" mapstructure:"title"`
Alerts bool `yaml:"alerts,omitempty" json:"alerts,omitempty" mapstructure:"alerts"`
Mask MaskSettings `yaml:"mask,omitempty" json:"mask,omitempty" mapstructure:"mask"`
Theme string `yaml:"theme,omitempty" json:"theme,omitempty" mapstructure:"theme"`
}
func (*Terminal) IsColorEnabled ¶ added in v1.192.0
IsColorEnabled determines if color output should be enabled. The isTTY parameter provides the default when Color is not explicitly set.
func (*Terminal) IsPagerEnabled ¶ added in v1.175.0
IsPagerEnabled reports whether a pager should be used based on Terminal.Pager. It returns true if the pager is explicitly enabled or set to a specific pager command, and false if disabled or not configured.
type Terraform ¶
type Terraform struct {
BasePath string `yaml:"base_path" json:"base_path" mapstructure:"base_path"`
ApplyAutoApprove bool `yaml:"apply_auto_approve" json:"apply_auto_approve" mapstructure:"apply_auto_approve"`
AppendUserAgent string `yaml:"append_user_agent" json:"append_user_agent" mapstructure:"append_user_agent"`
DeployRunInit bool `yaml:"deploy_run_init" json:"deploy_run_init" mapstructure:"deploy_run_init"`
InitRunReconfigure bool `yaml:"init_run_reconfigure" json:"init_run_reconfigure" mapstructure:"init_run_reconfigure"`
AutoGenerateBackendFile bool `yaml:"auto_generate_backend_file" json:"auto_generate_backend_file" mapstructure:"auto_generate_backend_file"`
WorkspacesEnabled *bool `yaml:"workspaces_enabled,omitempty" json:"workspaces_enabled,omitempty" mapstructure:"workspaces_enabled"`
Command string `yaml:"command" json:"command" mapstructure:"command"`
Shell ShellConfig `yaml:"shell" json:"shell" mapstructure:"shell"`
Init TerraformInit `yaml:"init" json:"init" mapstructure:"init"`
Plan TerraformPlan `yaml:"plan" json:"plan" mapstructure:"plan"`
}
type TerraformDocsReadmeSettings ¶ added in v1.175.0
type TerraformDocsReadmeSettings struct {
Source string `yaml:"source,omitempty" json:"source,omitempty" mapstructure:"source"`
Enabled bool `yaml:"enabled,omitempty" json:"enabled,omitempty" mapstructure:"enabled"`
Format string `yaml:"format,omitempty" json:"format,omitempty" mapstructure:"format"`
ShowProviders bool `yaml:"show_providers,omitempty" json:"show_providers,omitempty" mapstructure:"show_providers"`
ShowInputs bool `yaml:"show_inputs,omitempty" json:"show_inputs,omitempty" mapstructure:"show_inputs"`
ShowOutputs bool `yaml:"show_outputs,omitempty" json:"show_outputs,omitempty" mapstructure:"show_outputs"`
SortBy string `yaml:"sort_by,omitempty" json:"sort_by,omitempty" mapstructure:"sort_by"`
HideEmpty bool `yaml:"hide_empty,omitempty" json:"hide_empty,omitempty" mapstructure:"hide_empty"`
IndentLevel int `yaml:"indent_level,omitempty" json:"indent_level,omitempty" mapstructure:"indent_level"`
}
type TerraformInit ¶ added in v1.167.0
type TerraformInit struct {
PassVars bool `yaml:"pass_vars" json:"pass_vars" mapstructure:"pass_vars"`
}
type TerraformPlan ¶ added in v1.185.0
type TerraformPlan struct {
SkipPlanfile bool `yaml:"skip_planfile" json:"skip_planfile" mapstructure:"skip_planfile"`
}
type Validate ¶ added in v1.151.0
type Validate struct {
EditorConfig EditorConfig `yaml:"editorconfig,omitempty" json:"editorconfig,omitempty" mapstructure:"editorconfig"`
}
type Validation ¶
type Validation map[string]ValidationItem
type ValidationItem ¶
type ValidationItem struct {
SchemaType string `yaml:"schema_type" json:"schema_type" mapstructure:"schema_type"`
SchemaPath string `yaml:"schema_path" json:"schema_path" mapstructure:"schema_path"`
ModulePaths []string `yaml:"module_paths" json:"module_paths" mapstructure:"module_paths"`
Description string `yaml:"description" json:"description" mapstructure:"description"`
Disabled bool `yaml:"disabled" json:"disabled" mapstructure:"disabled"`
Timeout int `yaml:"timeout" json:"timeout" mapstructure:"timeout"`
}
type Vendor ¶ added in v1.106.0
type Vendor struct {
// Path to vendor configuration file or directory containing vendor files
// If a directory is specified, all .yaml files in the directory will be processed in lexicographical order
BasePath string `yaml:"base_path" json:"base_path" mapstructure:"base_path"`
List ListConfig `yaml:"list,omitempty" json:"list,omitempty" mapstructure:"list"`
}
type VendorComponentConfig ¶
type VendorComponentConfig struct {
ApiVersion string `yaml:"apiVersion" json:"apiVersion" mapstructure:"apiVersion"`
Kind string `yaml:"kind" json:"kind" mapstructure:"kind"`
Metadata VendorComponentMetadata `yaml:"metadata" json:"metadata" mapstructure:"metadata"`
Spec VendorComponentSpec `yaml:"spec" json:"spec" mapstructure:"spec"`
}
type VendorComponentMetadata ¶
type VendorComponentMixins ¶
type VendorComponentSource ¶
type VendorComponentSource struct {
Type string `yaml:"type" json:"type" mapstructure:"type"`
Uri string `yaml:"uri" json:"uri" mapstructure:"uri"`
Version string `yaml:"version" json:"version" mapstructure:"version"`
IncludedPaths []string `yaml:"included_paths" json:"included_paths" mapstructure:"included_paths"`
ExcludedPaths []string `yaml:"excluded_paths" json:"excluded_paths" mapstructure:"excluded_paths"`
}
type VendorComponentSpec ¶
type VendorComponentSpec struct {
Source VendorComponentSource `yaml:"source" json:"source" mapstructure:"source"`
Mixins []VendorComponentMixins `yaml:"mixins" json:"mixins" mapstructure:"mixins"`
}
type Version ¶ added in v1.127.0
type Version struct {
Check VersionCheck `yaml:"check,omitempty" mapstructure:"check" json:"check,omitempty"`
Constraint VersionConstraint `yaml:"constraint,omitempty" mapstructure:"constraint" json:"constraint,omitempty"`
}
Version configures version checking and constraint validation.
type VersionCheck ¶ added in v1.127.0
type VersionCheck struct {
Enabled bool `yaml:"enabled,omitempty" mapstructure:"enabled" json:"enabled,omitempty"`
Timeout int `yaml:"timeout,omitempty" mapstructure:"timeout" json:"timeout,omitempty"`
Frequency string `yaml:"frequency,omitempty" mapstructure:"frequency" json:"frequency,omitempty"`
}
VersionCheck configures automatic version checking against GitHub releases.
type VersionConstraint ¶ added in v1.201.0
type VersionConstraint struct {
// Require specifies the semver constraint(s) for Atmos version as a single string.
// Multiple constraints are comma-separated and treated as logical AND.
// Uses hashicorp/go-version library syntax (same as Terraform).
//
// Examples:
// ">=1.2.3" - Minimum version
// "<2.0.0" - Maximum version (exclude)
// ">=1.2.3, <2.0.0" - Range (AND logic)
// ">=2.5.0, !=2.7.0, <3.0.0" - Complex (multiple AND constraints)
// "~>1.2" - Pessimistic constraint (>=1.2.0, <1.3.0)
// "~>1.2.3" - Pessimistic constraint (>=1.2.3, <1.3.0)
// "1.2.3" - Exact version
Require string `yaml:"require,omitempty" mapstructure:"require" json:"require,omitempty"`
// Enforcement specifies the behavior when version constraint is not satisfied.
// Values:
// "fatal" - Exit immediately with error code 1 (default)
// "warn" - Log warning but continue execution
// "silent" - Skip validation entirely (for debugging)
Enforcement string `yaml:"enforcement,omitempty" mapstructure:"enforcement" json:"enforcement,omitempty"`
// Message provides a custom message to display when constraint fails.
// If empty, a default message is shown.
Message string `yaml:"message,omitempty" mapstructure:"message" json:"message,omitempty"`
}
VersionConstraint configures version constraint validation for Atmos. When specified, Atmos validates that the current version satisfies the constraint before executing any command.
type WorkflowConfig ¶
type WorkflowConfig map[string]WorkflowDefinition
type WorkflowDefinition ¶
type WorkflowDefinition struct {
Description string `yaml:"description,omitempty" json:"description,omitempty" mapstructure:"description"`
WorkingDirectory string `yaml:"working_directory,omitempty" json:"working_directory,omitempty" mapstructure:"working_directory"`
Steps []WorkflowStep `yaml:"steps" json:"steps" mapstructure:"steps"`
Stack string `yaml:"stack,omitempty" json:"stack,omitempty" mapstructure:"stack"`
}
type WorkflowManifest ¶ added in v1.56.0
type WorkflowManifest struct {
Name string `yaml:"name,omitempty" json:"name,omitempty" mapstructure:"name"`
Description string `yaml:"description,omitempty" json:"description,omitempty" mapstructure:"description"`
Workflows WorkflowConfig `yaml:"workflows" json:"workflows" mapstructure:"workflows"`
}
type WorkflowStep ¶
type WorkflowStep struct {
Name string `yaml:"name,omitempty" json:"name,omitempty" mapstructure:"name"`
Command string `yaml:"command" json:"command" mapstructure:"command"`
Stack string `yaml:"stack,omitempty" json:"stack,omitempty" mapstructure:"stack"`
Type string `yaml:"type,omitempty" json:"type,omitempty" mapstructure:"type"`
WorkingDirectory string `yaml:"working_directory,omitempty" json:"working_directory,omitempty" mapstructure:"working_directory"`
Retry *RetryConfig `yaml:"retry,omitempty" json:"retry,omitempty" mapstructure:"retry"`
Identity string `yaml:"identity,omitempty" json:"identity,omitempty" mapstructure:"identity"`
}
type Workflows ¶
type Workflows struct {
BasePath string `yaml:"base_path" json:"base_path" mapstructure:"base_path"`
List ListConfig `yaml:"list" json:"list" mapstructure:"list"`
}