Release v1.2.0 - provider-terraform
Summary
This release fixes a garbage-collection race between namespaced and cluster-scoped Workspace controllers, adds a configurable GC interval, bumps the vendored Terraform CLI to v1.5.7, updates crossplane-runtime to v2.4.0 for its CRD-schema-strip and Secret-cache performance improvements, and rolls up a batch of dependency and CI updates including several security fixes.
Warning
The crossplane-runtime v2.4.0 bump adds a new --enable-secret-cache flag (env ENABLE_SECRET_CACHE), defaulting to true - i.e. Secrets continue to be served from the informer cache, matching pre-v1.2.0 behavior, so no action is required to keep the current behavior. Setting it to false disables informer caching for Secret objects and falls back to direct API server reads for every Secret access, trading lower controller memory usage for higher API server QPS. Only disable it if you understand that tradeoff for your cluster's Secret volume.
Highlights
- Garbage Collection Fix: Consolidated garbage collection for namespaced and cluster-scoped Workspaces into a single
manager.Runnable, fixing a race where each scope's independent GC loop against the sharedtfDircould delete the other's workspace state directories - Configurable GC Interval: The Workspace garbage-collection interval is now configurable via the new
--gc-intervalflag, with support for disabling GC entirely via--gc-interval=0 - Terraform CLI Update: Bumped the vendored Terraform CLI from v1.5.5 to v1.5.7, the last release under the MPL license
- crossplane-runtime Update: Updated crossplane-runtime to v2.4.0, consuming upstream's CRD-schema-strip and Secret-cache performance improvements
- Security: Applied multiple dependency security fixes, including
google.golang.org/grpc,golang.org/x/mod,go.opentelemetry.io/otel, andgithub.com/klauspost/compress
Dependency Updates
- Updated crossplane-runtime to v2.4.0
- Updated Terraform CLI to v1.5.7
- Updated golangci-lint to v2.13.0
- Updated Alpine base image to v3.24.1
- Security: updated
google.golang.org/grpcto v1.82.1,golang.org/x/modto v0.40.0,go.opentelemetry.io/otelto v1.44.0,github.com/klauspost/compressto v1.18.7
What's Changed
- Rename Github workflow publish-provider-packages.yaml as publish-provider-package.yaml by @ulucinar in #235
- fix: consolidate garbage collection for namespaced and cluster-scoped workspaces by @erhancagirici in #234
- Bump Terraform CLI to v1.5.7 by @ulucinar in #284
- Update crossplane-runtime to v2.3.3 by @jonasz-lasut in #289
- Fix uptest-trigger setup go ordering by @sergenyalcin in #292
- Add jonasz-lasut to owners.md/codeowners by @jonasz-lasut in #295
- feat: make workspace GC interval configurable via --gc-interval by @barunavo in #294
- chore(deps): update module github.com/klauspost/compress to v1.18.7 [SECURITY] by @renovate[bot] in #290
- fix(deps): update module google.golang.org/grpc to v1.82.1 [SECURITY] by @renovate[bot] in #286
- chore(deps): update module go.opentelemetry.io/otel to v1.44.0 [SECURITY] by @renovate[bot] in #296
- chore(deps): update negz/create-tag action to v2 by @renovate[bot] in #318
- chore(deps): update actions/stale action to v11 by @renovate[bot] in #317
- chore(deps): update actions/setup-go action to v7 by @renovate[bot] in #316
- chore(deps): update terraform random to v3.9.0 by @renovate[bot] in #309
- chore(deps): pin crossplane-contrib/provider-workflows action to 451c4dc by @renovate[bot] in #271
- chore(deps): update actions/checkout action to v7 by @renovate[bot] in #315
- chore(deps): update actions/cache action to v6 by @renovate[bot] in #314
- chore(deps): update dependency kubernetes-sigs/kind to v0.32.0 by @renovate[bot] in #306
- chore(deps): update docker/setup-qemu-action action to v4.2.0 by @renovate[bot] in #307
- chore(deps): update alpine docker tag to v3.24.1 by @renovate[bot] in #304
- chore(deps): update tj-actions/changed-files action to v47.0.6 by @renovate[bot] in #301
- chore(deps): update fkirc/skip-duplicate-actions action to v5.3.2 by @renovate[bot] in #300
- chore(deps): update actions/upload-artifact action to v7.0.1 by @renovate[bot] in #299
- chore(deps): update dependency golangci/golangci-lint to v2.13.0 by @renovate[bot] in #305
- Update crossplane-runtime to v2.4.0, consume performance improvements by @jonasz-lasut in #320
Full Changelog: v1.1.0...v1.2.0