This repository has been archived by the owner on Jul 22, 2022. It is now read-only.
Releases: GoogleCloudPlatform/metacontroller
Releases · GoogleCloudPlatform/metacontroller
Metacontroller v0.4.0
Changes since v0.3.1:
For controller authors
- Metacontroller will now always use cascading deletion when it deletes child
objects on behalf of your controller (#146 by @enisoc). - Add an example skeleton of a Metacontroller hook written in Go (#34 by @enisoc).
- Add a run-to-completion DaemonSet example (#150 by @luisdavim).
- Add the option to request a per-object, one-time resync (#153 by @enisoc).
For cluster operators
-
Split the
metacontroller
Namespace into its own file inmanifests/
, so that creating the Namespace is optional (#133 by @mgoodness). -
Add aggregated RBAC roles to make it easier to grant users other than cluster admins access to Metacontroller APIs (#137 by @mikebryant).
-
Change the label selector for the Metacontroller StatefulSet to use the conventional
app.kubernetes.io/name
label (#140 by @mgoodness).NOTE: Since label selectors are immutable, updating will require deleting and recreating the Metacontroller StatefulSet.
For Metacontroller contributors
- Add a framework for integration tests and document testing guidelines for contributors (#136 by @enisoc).
Metacontroller v0.3.1
Changes since v0.3.0:
For controller authors
- Fix finalizers to trigger immediately upon deletion (#122 by @bsherrod).
- Fix deletion of namespaced child of cluster-scoped parent (#124 by @mgruener, #128 by @silverlyra).
- Fix Metacontroller panic when hook omits
status
field in response (#132 by @enisoc). - Fix to trigger sync hook on cluster-scoped parent when a namespaced child changes (#134 by @enisoc).
For cluster operators
- Installation manifests now use the final
v1
RBAC and StatefulSet APIs,
rather than the deprecated beta APIs (#130 by @mgoodness).
For Metacontroller contributors
Metacontroller v0.3.0
For controller authors
See the latest Metacontroller API docs and example controllers for details on these features.
- DecoratorController can label/annotate cluster-scoped resources (#62, by @sngchlko).
- DecoratorController can add either cluster-scoped or namespaced attachments onto cluster-scoped resources (#71, by @rlguarino).
- CompositeController has preliminary support for adding either cluster-scoped or namespaced children to cluster-scoped parent resources. However, this does not yet work when used together with a rolling update strategy (#71, by @rlguarino).
- CompositeController and DecoratorController now have a
finalize
hook to enable reliable cleanup of external state (#100, by @enisoc). - Allow DecoratorController to set status on the target object (#114, by @lionelvillard).
- Timeouts can be set individually for each webhook (#55, by @xocoatzin).
- Improve sanity checks around the use of labels and selectors in CompositeController (#112, by @enisoc).
For cluster operators
- Metacontroller exposes some initial Prometheus metrics (#75, by @rlguarino).
- Metacontroller runs in a StatefulSet instead of a Deployment (#66, by @crimsonfaith91).
- Add flag to configure Metacontroller to talk to an API server from outside the cluster (#113, by @enisoc).
For Metacontroller contributors
- The Go package import path has been renamed from
k8s.io/metacontroller
tometacontroller.app
, since the latter actually works as a vanity redirect (#119, by @enisoc). - Update to new dynamic client in client-go 8.0.0 (#80, by @crimsonfaith91).
- Added Skaffold+Kustomize to help set up a dev environment (#56, by @enisoc).