This release adds support for the spec.initProvider API and for the granular management policies alpha feature detailed here.
The generated example manifests from Terraform registry no longer contain the trailing YAML document separator (---).
The external client for Terraformed resources now explicitly requeue, up to 20 retries, a reconciliation request if a shared provider has expired. And only after 20 retries it propagates the error down to the managed reconciler. The ttl-expired error message has also been improved to hint at the --provider-ttl command-line option.
Also status updates and updates to certain annotations (crossplane.io/external-create-failed & crossplane.io/external-create-pending) no longer queue reconciliation requests, which decreases the resource utilization of upjet-based providers. This is especially important when errors happen during the external connecter's Create call, or in general, when an MR is failing to sync successfully.
Breaking API Changes
The API for the management policies alpha feature has a breaking change:
The old API of
spec:
managmentPolicy: FullControl/ObserveOnly/OrphanOnDeleteis replaced by:
spec:
managementPolicies: ["*", "Observe", "Create", "Update", "LateInitialize", "Delete"]After applying the updated provider, the spec.managementPolicy field will be removed automatically, and the spec.managementPolicies: ["*"] will be defaulted. This is equivalent to FullControl but for resources using ObserveOnly and OrphanOnDelete the it means that the behavior changes.
The suggested migration steps from spec.managementPolicy to spec.managementPolicies (if the alpha feature is being used) are:
- Pause your resources using non-default management policies before upgrading the provider version
- Noting down which ones those are (could be by adding labels
managementPolicy: x) - Upgrading the provider version
- Setting the desired management policies on the marked ones (those with label
managementPolicy)
What's Changed
- Update alpine Docker tag to v3.18.2 by @renovate in #42
- Update README.md by @jeanduplessis in #56
- Update CODEOWNERS file by @turkenf in #57
- Adding backstage configuration by @Piotr1215 in #58
- Add an event filter with the resource.DesiredStateChanged predicate to filter status updates out by @ulucinar in #60
New Contributors
- @Piotr1215 made their first contribution in #58
Full Changelog: v0.9.0...v0.10.0