- v1.7.1
- Add the manager config patch to config/default/kustomization.yaml
- Deprecate support for packagemanifests.
- (go/v3, ansible/v1, helm/v1) Move
leases.coordination.k8s.io
to its own proxy-role rule - (go/v3) Set the Makefile’s
SHELL
variable to the system’sbash
binary - Ensure that existing dependent resources have owner annotations
- (go/v3) Bump controller-runtime to v0.8.3 and kubernetes dependencies to v0.20.2
v1.7.1
Add the manager config patch to config/default/kustomization.yaml
The scaffolded --config
flag was not added to either ansible-/helm-operator binary when config file support was originally added, so does not currently work. The --config
flag supports configuration of both binaries by file; this method of configuration only applies to the underlying controller manager, not the operator as a whole. To optionally configure the operator’s Deployment with a config file, make the following update to config/default/kustomization.yaml:
# If you want your controller-manager to expose the /metrics # endpoint w/o any authn/z, please comment the following line.
\- manager_auth_proxy_patch.yaml
+# Mount the controller config file for loading manager configurations
+# through a ComponentConfig type
+- manager_config_patch.yaml
This feature is opt-in: flags can be used as-is or to override config file values.
See #4776 for more details.
Deprecate support for packagemanifests.
The operator-framework is removing support for the packagemanifests format in the near future. Hence, operator-sdk generate packagemanifests
and operator-sdk run packagemanifests
commands are deprecated. In order to migrate packagemanifests to bundles, operator-sdk pkgman-to-bundle
command can be used. Run operator-sdk pkgman-to-bundle --help
for more details.
See #4838 for more details.
(go/v3, ansible/v1, helm/v1) Move leases.coordination.k8s.io
to its own proxy-role rule
Make the following changes to config/rbac/leader_election_role.yaml:
rules:
\- apiGroups:
- ""
- - coordination.k8s.io
resources:
- configmaps
+ verbs:
+- get
+- list
+- watch
+- create
+- update
+- patch
+- delete
+- apiGroups:
+- coordination.k8s.io
+ resources:
- leases
verbs:
- get
See #4835 for more details.
(go/v3) Set the Makefile’s SHELL
variable to the system’s bash
binary
Importing setup-envtest.sh
needs bash, so your Makefile’s SHELL
variable should be set to bash
with error options:
else GOBIN=$(shell go env GOBIN)
endif
+# Setting SHELL to bash allows bash commands to be executed by recipes.
+# This is a requirement for 'setup-envtest.sh' in the test target.
+# Options are set to exit when a recipe line exits non-zero or a piped command fails.
+SHELL = /usr/bin/env bash -o pipefail
+.SHELLFLAGS = -ec
+ all: build
See #4835 for more details.
Ensure that existing dependent resources have owner annotations
For Ansible-based operators, owner reference annotations on cluster-scoped dependent resources and dependent resources in other namespaces were not applied correctly. A workaround was to add these annotations manually, which is no longer required as this bug has been fixed.
See #4850 for more details.
(go/v3) Bump controller-runtime to v0.8.3 and kubernetes dependencies to v0.20.2
In your go.mod, change controller-runtime’s version to v0.8.3 and kubernetes dependencies to v0.20.2, then rebuild your project.
See #4863 for more details.
Last modified May 3, 2021: Release v1.7.1 (#4860) (c984b00c)