Getting started¶
Install¶
The script verifies the archive's checksum, and the release signature if cosign is installed.
Download the package for your platform from GitHub Releases, then:
Check it works:
Create a config¶
This writes a commented envhaul.yaml and offers to add .env to
.gitignore. Edit it to list your components and variables:
name: dev
aws_profile: my-dev-profile # from ~/.aws/config
aws_region: us-east-1
ssm_prefix: /myapp/dev
components:
app:
env_file: .env
vars:
APP_ENV: development # inline, committed
API_KEY: "{{ssm:api/API_KEY}}" # /myapp/dev/api/API_KEY
DB_PASSWORD: "{{secret:myapp/dev/db#password}}"
Validate, preview, sync¶
envhaul validate # offline: syntax, names, references
envhaul list # offline: where each value comes from
envhaul diff # fetch and show what would change (values masked)
envhaul sync # fetch and write the .env files
If your profile uses IAM Identity Center (SSO), sign in first:
Next steps¶
- Configuration: every config option
- References and pipes: the template syntax
- AWS profiles and permissions: multiple accounts and IAM policies
- Shell completion:
envhaul completion --help(Homebrew and the Linux packages install it for you)