v1.222.0-rc.3
Pre-release
Pre-release
🚀 Enhancements
test: stabilize Terraform cache coverage Erik Osterman (Cloud Posse) (@osterman) (#2620)
## what- Add environment overrides for
components.terraform.cache.enabledandcomponents.terraform.cache.location, plus docs in the Terraform config and environment variable references. - Add focused registry-cache coverage, including Windows-safe trust command unit tests and a non-golden acceptance test with an isolated cache location.
- Stabilize acceptance CI provider reuse with a process-level
TF_PLUGIN_CACHE_DIRunder the Atmos XDG cache root, and bump the CI cache key soactions/cachesaves a fresh provider-plugin cache.
why
- The native registry cache should be testable on Windows only after its loopback certificate is trusted, but it should not be enabled globally where cold/warm cache state can flip snapshots or screenshots.
- Windows timeout mitigation should use Terraform’s provider plugin cache, which avoids the native cache proxy TLS trust problem.
- The new environment overrides make targeted cache dogfooding possible without editing shared fixture
atmos.yamlfiles.
references
- Related context from #2607.
- Validated with
go test ./pkg/config -run 'TestViperBindEnv_.*Cache',go test ./pkg/terraform/cache -run 'Test.*Trust|Test.*Windows',go test ./tests -run TestTerraformRegistryCache -timeout 10m, andgit diff --check.
Summary by CodeRabbit
-
New Features
- Added Terraform registry cache configuration with
enabledandlocationoptions to control caching behavior. - Introduced new environment variables
ATMOS_COMPONENTS_TERRAFORM_CACHE_ENABLEDandATMOS_COMPONENTS_TERRAFORM_CACHE_LOCATIONfor cache control.
- Added Terraform registry cache configuration with
-
Documentation
- Updated Terraform component configuration documentation with registry cache examples and environment variable references.
-
Tests
- Added acceptance tests for Terraform registry cache functionality.