Auth and Utility Commands No Longer Require Stack Configurations
Atmos auth, documentation, and workflow management commands now work independently of stack configurations, making it easier to use Atmos in CI/CD pipelines and alongside "native" Terraform workflows.
What Changed
Six Atmos commands that don't operate on stacks have been updated to no longer require stack configurations:
Auth Commands:
atmos auth env- Export cloud credentials as environment variablesatmos auth exec- Execute commands with authenticated credentialsatmos auth shell- Launch an authenticated shell session
Utility Commands:
atmos list workflows- List available workflowsatmos list vendor- List vendor configurationsatmos docs <component>- Display component documentation
Why This Matters
Previously, these commands would fail with an error if you didn't have stacks.base_path and stacks.included_paths configured in your atmos.yaml:
Error: failed to initialize atmos config
stack base path must be provided in 'stacks.base_path' config or ATMOS_STACKS_BASE_PATH' ENV variable
This created an unnecessary barrier for teams who wanted to:
- Use Atmos auth for credential management without adopting full stack-based configuration
- Run authentication commands in CI/CD pipelines
- Browse component documentation without setting up stacks
- Manage workflows independently of stack operations
With these changes, Atmos now works with "native" Terraform, regardless of whether you use Atmos to manage stack configuration or not (but let's face it, Nobody Runs Native Terraform).
You can now use Atmos features incrementally:
Just Authentication
Use Atmos for cloud credential management without any stack configuration:
# atmos.yaml - minimal config for auth only
base_path: .
auth:
providers:
aws-prod:
kind: aws-sso
type: aws
region: us-east-1
sso_start_url: https://mycompany.awsapps.com/start
sso_region: us-east-1
sso_account_id: "123456789012"
sso_role_name: AdministratorAccess
identities:
prod-admin:
provider: aws-prod
default: true
Then use it with your existing Terraform:
# Get authenticated credentials
atmos auth exec -- terraform plan
# Or export credentials for your scripts
eval $(atmos auth env)
Just Vendor Management
Use Atmos to vendor and manage component dependencies without adopting stack-based configuration:
# List all vendored components
atmos list vendor
# Pull component updates
atmos vendor pull
Just Documentation
Browse component README files without any stack configuration:
# View component documentation
atmos docs vpc
atmos docs eks-cluster
Incremental Adoption
Start with authentication and vendor management, then gradually adopt stack-based configuration as your needs evolve. Each Atmos feature can be used independently.
What Hasn't Changed
Commands that actually work with stacks still require stack configuration:
atmos list stacksatmos list componentsatmos describe componentatmos terraform plan/apply
This ensures that stack-dependent operations have the context they need while allowing utility commands to work independently.