Skip to content

Version v0.15.0

This is the changelog for version 0.15.0.

New

  • Watching data: a template.data entry can set watch: true to reconcile the ManagedResource as 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 namespaceSelector or is deleted, instead of on the next reconcile of the ManagedResource.
  • Changes to data that is not watched are no longer picked up when a new namespace is created; use watch: true or 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: true requires 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