RB
03/11/2026, 11:28 PMv1.31.0RB
03/11/2026, 11:28 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:29 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:30 PMRB
03/11/2026, 11:30 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:30 PMRB
03/11/2026, 11:30 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:32 PMRB
03/11/2026, 11:33 PMRB
03/11/2026, 11:34 PMRB
03/11/2026, 11:34 PMErik Osterman (Cloud Posse)
03/11/2026, 11:36 PMErik Osterman (Cloud Posse)
03/11/2026, 11:36 PMRB
03/11/2026, 11:37 PMErik Osterman (Cloud Posse)
03/11/2026, 11:38 PMRB
03/11/2026, 11:38 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:38 PMRB
03/11/2026, 11:38 PMyou mentioned it broke something. what was broken?it caused all the atmos terraform pipelines to fail until we pinned it back to 1.31
Andriy Knysh (Cloud Posse)
03/11/2026, 11:38 PMRB
03/11/2026, 11:40 PMError: invalid stack manifest: template: catalog/services/snip/_defaults.yaml:3:57: executing "catalog/services/snip/_defaults.yaml" at <.settings.config.short_stage>: map has no entry for key "settings"
File being processed: catalog/services/snip/_defaults.yaml
Import chain:
→ orgs/snip/snip/us-east-1.yaml```RB
03/11/2026, 11:41 PMErik Osterman (Cloud Posse)
03/11/2026, 11:43 PMterraform.required_providers.cloudposse/utils.version to == 1.31.0 and keep everything else as-is
Perry sure you can use
<http://_override.tf|_override.tf> for that Combined with generate block to generate that fileAndriy Knysh (Cloud Posse)
03/11/2026, 11:45 PMErik Osterman (Cloud Posse)
03/11/2026, 11:45 PMErik Osterman (Cloud Posse)
03/11/2026, 11:46 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:46 PMRB
03/11/2026, 11:47 PMRB
03/11/2026, 11:47 PMRB
03/11/2026, 11:48 PMErik Osterman (Cloud Posse)
03/11/2026, 11:49 PMRB
03/11/2026, 11:49 PMErik Osterman (Cloud Posse)
03/11/2026, 11:49 PMRB
03/11/2026, 11:50 PMRB
03/11/2026, 11:50 PMErik Osterman (Cloud Posse)
03/11/2026, 11:50 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:51 PMRB
03/11/2026, 11:51 PMErik Osterman (Cloud Posse)
03/11/2026, 11:52 PMErik Osterman (Cloud Posse)
03/11/2026, 11:53 PMErik Osterman (Cloud Posse)
03/11/2026, 11:53 PMAndriy Knysh (Cloud Posse)
03/11/2026, 11:54 PMsettings.config.short_stage, but the value is not provided. The old atmos just ignored it
should be an easy fix (find the template, provide the value - we can help if help is needed)Erik Osterman (Cloud Posse)
03/11/2026, 11:55 PMErik Osterman (Cloud Posse)
03/11/2026, 11:55 PMRB
03/11/2026, 11:59 PMRB
03/11/2026, 11:59 PMRB
03/12/2026, 12:00 AMErik Osterman (Cloud Posse)
03/12/2026, 12:11 AMErik Osterman (Cloud Posse)
03/12/2026, 12:13 AMErik Osterman (Cloud Posse)
03/12/2026, 12:16 AMRB
03/12/2026, 3:18 AMRB
03/12/2026, 3:19 AMRB
03/12/2026, 3:20 AMAndriy Knysh (Cloud Posse)
03/12/2026, 3:42 AMAndriy Knysh (Cloud Posse)
03/12/2026, 3:43 AMRB
05/14/2026, 3:10 PMRB
05/14/2026, 3:11 PMPOC failed. New error confirms a Terraform constraint I missed:
Error: Duplicate required providers configuration
A module may have only one required providers configuration.
Terraform does not merge required_providers blocks across .tf files. A module has at most one. My earlier "Terraform merges multiple required_providers blocks" claim was wrong.
What this means
The "centralize one provider via generate:, leave others in <http://versions.tf|versions.tf>" approach is impossible. The only ways to make this work would be:
1. Generate the entire <http://versions.tf|versions.tf> from YAML — delete each component's <http://versions.tf|versions.tf> and declare ALL providers (aws, null, local, utils, github, ...) in generate.versions.tf.json. Then leverage Atmos's inheritance/deep-merge so a baseline generate: block in stacks/orgs/org/_defaults.yaml carries utils, and component-level YAML adds the rest. Atmos merges the maps before rendering. Larger refactor; would need its own POC.
2. Use a string template in generate: — emit raw HCL via Go template. Same single-block problem; you'd still need to include all required_providers.RB
05/14/2026, 3:13 PMErik Osterman (Cloud Posse)
05/14/2026, 3:14 PMgenerate block?Erik Osterman (Cloud Posse)
05/14/2026, 3:14 PMErik Osterman (Cloud Posse)
05/14/2026, 3:14 PMRB
05/14/2026, 3:14 PMRB
05/14/2026, 3:15 PMgenerate:
<http://versions.tf|versions.tf>:
terraform:
required_providers:
utils:
source: cloudposse/utils
version: "1.35.0"Erik Osterman (Cloud Posse)
05/14/2026, 3:15 PMversions.tfRB
05/14/2026, 3:15 PMErik Osterman (Cloud Posse)
05/14/2026, 3:16 PMRB
05/14/2026, 3:16 PMErik Osterman (Cloud Posse)
05/14/2026, 3:16 PMErik Osterman (Cloud Posse)
05/14/2026, 3:16 PMversions_override.tfRB
05/14/2026, 3:16 PMZack
05/14/2026, 3:57 PMRB
05/14/2026, 4:04 PM_versions_override.tf.json:
terraform:
required_providers:
utils:
source: cloudposse/utils
version: "1.35.0"Erik Osterman (Cloud Posse)
05/14/2026, 4:31 PMgenerate blockErik Osterman (Cloud Posse)
05/14/2026, 4:31 PM