Version v0.15.0
This is the changelog for version 0.15.0.
New
- Watching data: a
template.dataentry can setwatch: trueto reconcile theManagedResourceas soon as the referenced resource changes. It needs the updated CRD. See watching data.
Behavior changes
- The resources of a namespace are deleted as soon as it stops matching the
namespaceSelectoror is deleted, instead of on the next reconcile of theManagedResource. - Changes to data that is not watched are no longer picked up when a new namespace is created; use
watch: trueor force a reconcile by changing an annotation. - The default memory limit is now 192Mi instead of 128Mi.
Improvements
- Reconciles are much cheaper: a steady reconcile of 500 namespaces went from about 18,500 API requests to about 3,000.
Upgrade notes
- On the first start, the operator deletes the resources of namespaces that stopped matching while the previous version was running.
watch: truerequires the updated CRD. If CRDs are not applied by the chart (crd.enable: false) or by your tooling, apply it manually; otherwise the field is silently dropped.
What's Changed
- perf: stop writing ManagedResource status per namespace and per resource by @eryalito in !216
- fix: let a recreated ManagedResource take over its existing objects by @eryalito in !218
- perf: reuse the manager's RESTMapper and a single dynamic client by @eryalito in !217
- perf: fetch template data and parse the template once per reconcile by @eryalito in !219
- fix: visit every tracked resource when removing stale ones by @eryalito in !220
- docs: explain which resources are deleted with a ManagedResource by @eryalito in !221
- perf: stop reconciling a ManagedResource on its own status writes by @eryalito in !222
- perf: stop fetching every tracked resource after the namespace pass by @eryalito in !223
- fix: remove resources as soon as their namespace stops matching by @eryalito in !224
- fix: generate the Helm chart CRDs with make manifests by @eryalito in !225
- feat: reconcile a ManagedResource when its watched data changes by @eryalito in !226
- fix: recover Ready after namespace failures and trim the watch cache by @eryalito in !227
- fix: keep reconciling other namespaces and ManagedResources when one fails by @eryalito in !228
- docs: document reconcile triggers, best-effort deletes and watch costs by @eryalito in !229
Full Changelog: https://github.com/eryalito/kubensync-operator/compare/v0.14.1...v0.15.0
Release
Check out the release on GitHub