Settings
The settings section configures Atmos global settings that affect how stacks are processed, how lists are merged, how output is displayed, and how authentication tokens are injected for private repositories.
Configuration
atmos.yaml
Settings Sections
| Section | Description |
|---|---|
| Terminal | Terminal display, color, width, pager, and syntax highlighting |
| Secret Masking | Automatic secret detection and masking in output |
| Markdown Styling | Customize markdown rendering in terminal |
| Atmos Pro | Atmos Pro integration for stack locking and workspace management |
List Merge Strategy
settings.list_merge_strategySpecifies how lists are merged in Atmos stack manifests. Can also be set using
ATMOS_SETTINGS_LIST_MERGE_STRATEGYenvironment variable or--settings-list-merge-strategycommand-line argument.The following strategies are supported:
replace- Most recent list imported wins (the default behavior).
append- The sequence of lists is appended in the same order as imports.
merge- The items in the destination list are deep-merged with the items in the source list. The items in the source list take precedence. The items are processed starting from the first up to the length of the source list (the remaining items are not processed). If the source and destination lists have the same length, all items in the destination lists are deep-merged with all items in the source list.
Token Injection
Atmos can automatically inject authentication tokens when vendoring from private repositories. This eliminates the need to embed credentials in vendor URLs.
settings.inject_github_tokenEnables automatic GitHub token injection when vendoring from private GitHub repositories. Defaults to
true.When enabled, Atmos automatically injects authentication credentials from
ATMOS_GITHUB_TOKENorGITHUB_TOKENenvironment variables.Set to
falseto disable automatic GitHub token injection.settings.inject_gitlab_tokenEnables automatic GitLab token injection when vendoring from private GitLab repositories. Defaults to
false.When enabled, Atmos automatically injects authentication credentials from
ATMOS_GITLAB_TOKENorGITLAB_TOKENenvironment variables.settings:
inject_gitlab_token: truesettings.inject_bitbucket_tokenEnables automatic Bitbucket token injection when vendoring from private Bitbucket repositories. Defaults to
false.When enabled, Atmos automatically injects authentication credentials from
ATMOS_BITBUCKET_TOKENorBITBUCKET_TOKENenvironment variables.settings:
inject_bitbucket_token: trueFor Bitbucket, you can also configure a custom username via
bitbucket_usernamesetting. If not specified, defaults tox-token-auth.settings.github_usernameSpecifies the GitHub username for OCI registry authentication to GitHub Container Registry (ghcr.io).
When pulling artifacts from ghcr.io using
oci://ghcr.io/...sources, Atmos requires a GitHub username along with the token. The username can be configured via:github_usernamesetting inatmos.yamlATMOS_GITHUB_USERNAMEenvironment variable (highest precedence)GITHUB_ACTORenvironment variable (automatically set in GitHub Actions)GITHUB_USERNAMEenvironment variable
Configuration example:
settings:
github_username: "myusername"GitHub Actions usage:
# In GitHub Actions, GITHUB_ACTOR is automatically available
# No additional configuration needed
- name: Pull from GHCR
run: atmos vendor pull -c my-component
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# GITHUB_ACTOR is automatically set by GitHub ActionsNote: Unlike Git repository authentication (which uses
x-access-tokenas username), GitHub Container Registry requires your actual GitHub username. Without a username, authentication will fail even ifATMOS_GITHUB_TOKENorGITHUB_TOKENis set.
Deprecated Settings
settings.docs(Deprecated)- Deprecated
The
settings.docssection is deprecated and will be removed in a future version. Please usesettings.terminalinstead.max-width(Deprecated)- Use
settings.terminal.max_widthinstead. pagination(Deprecated)- Use
settings.terminal.pagerinstead.
Environment Variables
ATMOS_SETTINGS_LIST_MERGE_STRATEGY- List merge strategy:
replace,append,merge. ATMOS_GITHUB_TOKEN- GitHub token for private repository access.
ATMOS_GITHUB_USERNAME- GitHub username for GHCR authentication.
ATMOS_GITLAB_TOKEN- GitLab token for private repository access.
ATMOS_BITBUCKET_TOKEN- Bitbucket token for private repository access.
ATMOS_BITBUCKET_USERNAME- Bitbucket username for authentication.
See Also
- CLI Configuration — Overview of CLI configuration
- Environment Variables — All configuration environment variables