Releases: operator-framework/operator-sdk
v1.6.4
v1.6.4
Bug Fixes
- For Ansible-based operators, fixed a bug that prevented owner reference annotations from being added to cluster-scoped and multi-namespace resources, which had to be applied manually to correctly reconcile them. (#4858)
- Format ansible-operator and helm-operator
runcommand logs correctly. (#4845) - Pinned pip3 to 21.1 in the ansible-operator image to fix pypa/pip#9827. (#4879)
- Pinned base images of ansible-operator to ubi:8.3-297.1618432833, and helm-operator and scorecard to ubi-minimal:8.3-298.1618432845. (#4876)
v1.7.1
v1.7.1
Additions
- Added
operator-sdk pkgman-to-bundlecommand to support migration of packagemanifests to bundle format. Refer https://github.com/operator-framework/enhancements/blob/master/enhancements/sdk-migrate-bundle.md for more details. (#4718) - For Ansible-based operators, added log messages for each event that is received. This will make debugging excessive reconciliations much more straightforward. (#4779)
- Added new optional flag
--optional-valuesto the commandoperator-sdk bundle validate. This option allows to inform a list of key and values to the validators. (e.g.operator-sdk bundle validate ./bundle --optional-values=k8s-version=1.22 --select-optional suite=operatorframework). (#4693)
Changes
- (go/v3, ansible/v1, helm/v1) Bumped controller-runtime to v0.8.3 (kubernetes 1.20). (#4863)
Deprecations
- Deprecated
operator-sdk generate packagemanifestsandoperator-sdk run packagemanifestscommands, packagemanifests support in general in favour of operator bundles. (#4838)
Bug Fixes
- For Ansible- and Helm-based operators, added the
--configflag, which was mistakenly not added to either ansible-/helm-operator binary when file support was originally added. (#4776) - Format ansible-operator and helm-operator
runcommand logs correctly. (#4844) - (go/v3, ansible/v1, helm/v1) Moved
leases.coordination.k8s.ioto its own proxy-role rule. (#4835) - (go/v3) Set the Makefile's
SHELLvariable to the system'sbashbinary with shell opts. (#4835) - The
generate kustomize manifestscommand no longer adds non-served CRD versions to a CSV's.spec.customresourcedefinitions.owned. (#4842) - For Anible-based operators, fixed a bug that prevented owner reference annotations from being added to cluster-scoped and multi-namespace resources, which had to be applied manually to correctly reconcile them. (#4850)
v1.6.2
v1.6.2
Note
This is a security release, wherein base images have been patched. It is recommended that you bump your project’s base image from a previous v1.6 patch tag to v1.6.2.
Bug Fixes
- For Ansible- and Helm-based operators, add the
--configflag, which was mistakenly not added to either ansible-/helm-operator binary when file support was originally added. (#4780)
v1.5.2
v1.5.2
No changes for this release!
Note
This is a security release, wherein base images have been patched. It is recommended that you bump your project’s base image from a previous v1.5 patch tag to v1.5.2.
v1.6.1
v1.6.1
Additions
- For Golang-based operators, added the
declarative.go/v1plugin which customizes initialized projects with patterns from kubernetes-sigs/kubebuilder-declarative-pattern. (e.goperator-sdk create api --plugins=go/v3,declarative). (#4731) - Added
kustomize.common/v1plugin which scaffolds the a commonly used project base that leverageskustomize. (#4730) - (ansible/v1, helm/v1) Added the option to configure
ansible-operatorandhelm-operatorwith a component config. (#4701) - (ansible/v1, helm/v1) Add rules for leader election. (#4701)
- Added
alpha config-gen, a kustomize plugin to specialize configuration for kubebuilder-style projects. This feature is alpha and subject to breaking changes. (#4670) - (helm/v1, ansible/v1) Added Makefile
helptarget. (#4660) - (ansible/v1, helm/v1) Added
securityContext's to the manager's Deployment to disallow running as root user. (#4655) - Added
--ca-secret-nametorun bundleandrun bundle-upgradeto configure the registry Pod with an in-cluster certificate Secret to use TLS with a private registry. (#4703) - For Helm based-operators, added annotation
helm.sdk.operatorframework.io/uninstall-wait: "true"to allow all resources to be deleted before removing the custom resource's finalizer. (#4487) - (go/v2, go/v3, ansible/v1, helm/v1) Added the
opmandcatalog-buildMakefile targets to downloadopmand build operator catalogs either from scratch or an existing catalog. (#4406) - Added new optional flags
--delete-all,--delete-crdsand--delete-operator-groupsto the cleanup command. (#4619) - Added
--service-accounttorun bundleandrun bundle-upgradeto bind registry objects to a non-default service account. (#4694) - Added
--pull-secret-nametorun bundleandrun bundle-upgradeto configure the registry Pod with an in-cluster docker config Secret to pull bundle images from private registries. (#4694) - (ansible/v1, helm/v1) Create and bind controller-manager to a non-default service account (kubebuilder#2070). (#4653)
Changes
- For Ansible-based Operators: Update Python dependencies.
- openshift (0.11.2 -> 0.12.0)
- kubernetes (11.0.0 -> 12.0.1)
- ansible-runner (1.4.6 -> 1.4.7)
- ansible (2.9.15 -> 2.9.19). (#4734)
- (ansible/v1) Update scaffolded requirements.yml to pull in newer versions of the Ansible collections.
- community.kubernetes (1.1.1 -> 1.2.1)
- operator_sdk.util (0.1.0 -> 0.2.0). (#4734)
- (helm/v1) Explicitly set
--health-probe-bind-addressin the manager's auth proxy patch. (#4654) - (ansible/v1) Explicitly set
--health-probe-bind-addressin the manager's auth proxy patch. (#4654) - (go/v2, go/v3, ansible/v1, helm/v1) Changed
BUNDLE_IMGand addedIMAGE_TAG_BASEMakefile variables to allow one line bundle and catalog image builds. (#4406) - For Ansible-based operators, collections as main dependencies for the operator installed with ansible-galaxy are pinned to specific versions to prevent hard to track bugs. (#4529)
- Update community Kubernetes Ansible collection to version 1.1.1. (#4594)
- Bumped urllib3 in ansible-operator-base and ansible-operator images to 1.26.4 for a security fix. (#4723)
- For Ansible-based operators, Python package installation in the Docker image is delegated to a pipenv managed Pipfile and Pipfile.lock, pinning both the main installed packages and their subdependencies. This prevents installing conflicting (sub)dependencies. (#4543)
- For Ansible-based operators, Python package installation in the Docker image is delegated to a pipenv managed Pipfile and Pipfile.lock, pinning both the main installed packages and their subdependencies. This prevents installing conflicting (sub)dependencies. (#4543)
Deprecations
- (ansible/v1, helm/v1) The flags
--enable-leader-electionand--metrics-addrwere deprecated in favor of--leader-electand--metrics-bind-address, respectively, to follow upstream conventions. (#4654)
Bug Fixes
- (go/v3) Create webhook manifests in
config/on runningcreate webhook, notinit. (#4701) - (manifests/v2) Added a
config/manifestskustomize patch to remove the cert-manager volume and volumeMount from manifests destined forgenerate <bundle|packagemanifests>. (#4623) - For Helm-based operators, fixed handling of
kind: Listwhereby the operator fails when trying to set watch on the object. Watches are created for objects in the list instead. (#4682) - (go/v2, go/v3, ansible/v1, helm/v1) Fixed the Prometheus
ServiceMonitormetrics endpoint, which was not configured to be scraped correctly. (#4680) - In Ansible-based operators, mark the input variables from custom resources as unsafe by default. (#4566)
v1.5.1
v1.5.0
v1.5.0
This release contains a few big changes, one of which is the stabilization of project version 3-alpha to 3. In a sense this is a breaking change because 3-alpha no longer exists, however because the config version was alpha it technically is not. Regardless, the alpha config-3alpha-to-3 command was added to assist in upgrading. See the relevant migration guide section for more information.
Additions
- Added support for markers for files with the
ymlextension. More info: kubernetes-sigs/kubebuilder#1907. (#4402) - (go/v3) Added the
--forceoption to thecreate webhookcommand. More info: kubernetes-sigs/kubebuilder#1903. (#4402) - (go/v3) Added
ErrorIfCRDPathMissingconfig by default to controller'ssuite_tests.go. More info: kubernetes-sigs/kubebuilder#1910. (#4402) - For Ansible-based operators, allow passing a
--graceful-shutdown-timeoutto configure the duration the manager should wait before stopping. (#4571) - (go/v3) Create and bind to a non-default service account (kubernetes-sigs/kubebuilder#2070). (#4626)
Changes
- Breaking change: PROJECT config version 3-alpha has been upgraded to version 3. (#4613)
- (go/v3) Upgraded the
sigs.k8s.io/kubebuilder-declarative-patterndependency used bycreate api --pattern=addon. More info: kubernetes-sigs/kubebuilder#1946. (#4402) - (go/v2, go/v3) Added Makefile help. (#4402)
- (go/v3) Changed the manager pod template's security context
runAsUser: 65532torunAsNonRoot: true. More info: kubernetes-sigs/kubebuilder#1978. (#4402) - Improved
generate bundleandgenerate packagemanifestshandling and help text for use outside of a project. (#4514) - (go/v3) Pinned controller-runtime to v0.7.2. (#4626)
- For Ansible-based operators, change the level of the proxy skipping cache logs to debug level. (#4511)
Bug Fixes
- For Go-based operators, fixed
create api --forcesuch that it actually overwrites all files. More info: kubernetes-sigs/kubebuilder#1903. (#4402) - Upgraded the
gcr.io/kubebuilder/kube-rbac-proxyimage version from0.5.0to0.8.0to support rootless run mode. More info kubernetes-sigs/kubebuilder#1955. (#4402) - (go/v3) Correctly named health/readiness endpoints as
healthzandreadyz, respectively. More info kubernetes-sigs/kubebuilder#1910. (#4402) - (go/v3) Tolerate
.directories when checking if dir is empty ininit. More info: kubernetes-sigs/kubebuilder#1944. (#4402) - Properly consider all Go files when generating a CSV's
spec.customresourcedefinitions.owned. (#4507) - Fixed samples kustomization.yaml generation on
operator-sdk init --plugins=helm --helm-chart=<chart>, caused by out-of-order operations in plugin code. (#4584) - Skip CSV definitions parsing in
generate kustomize manifestsif the APIs dir does not exist, as projects may use only required APIs. (#4624) - Bump cryptography dependency in ansible-operator to
3.3.2. This will fix a potential security bug related to update() calls. Ref: https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst#332---2021-02-07. (#4539) - Fixed ambiguous
--input-dirand--deploy-dirflag semantics forgenerate bundle. (#4514) - (ansible/v1, helm/v1) Upgraded the
gcr.io/kubebuilder/kube-rbac-proxyimage version from0.5.0to0.8.0to support rootless run mode. (#4498) - For Ansible/Helm-based operators, fix swapped readinessProbe/livenessProbe in manager. (#4546)
scorecard-kuttl/v2.0.0
The quay.io/operator-framework/scorecard-test-kuttl image will now be released separately from other Operator SDK images due to its dependency on kuttl. These releases start at v2.0.0 and contain images tagged like:
quay.io/operator-framework/scorecard-test-kuttl:v2.0.0
quay.io/operator-framework/scorecard-test-kuttl:v2.0
Images tagged with master will still be pushed on a per-commit basis.
v1.4.2
v1.4.2
Bug Fixes
- Properly consider all Go files when generating a CSV's
spec.customresourcedefinitions.owned. (#4509) - Bump cryptography dependency in ansible-operator to 3.3.2. This will fix a potential security bug related to
update()calls. Ref: https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst#332---2021-02-07. (#4531)