SDK for building Kubernetes applications. Provides high level APIs, useful abstractions, and project scaffolding.
operator-sdk run bundle(-upgrade)
: Change default of the --security-context-config
flag to be legacy
instead of restricted
. (#6210)operator-sdk run bundle
: When creating the CatalogSource, we now set the grpcPodConfig.SecurityContextConfig
to the value of the --security-context-config
flag. (#6210)scorecard-test-kuttl
image always prints the kuttl logs in case there is an error processing the kuttl report. (#6225)operator-sdk bundle validate
: Fix a bug in the Kubernetes 1.25 validation logic that would warn that a Kubernetes resource was deprecated without checking the group that contains the resource. (i.e if apps/deployments was deprecated and you used other/deployments you would recieve a warning)". The validation logic will now verify the group and resource before issuing a warning. (#6227)operator-sdk run bundle(-upgrade)
: Fix a bug where SQLite bundle images were failing to be run properly due to a change in the default channel that is used by run bundle(-upgrade)
when creating a subscription. (#6210)operator-sdk run bundle(-upgrade)
: Update the logic used to set a Registry Pod's PSA configuration to fix a bug where a Pod's containers still had a restrictive SecurityContext even when setting --security-context-config=legacy
. (#6210)operator-sdk bundle validate
: Fix a bug that would make the command exit with a 0 exit code even if there were validation failures. (#6274).spec
field, which is a perfectly valid scenario. Instead of throwing an error scorecard will now issue a suggestion. (#6245)operator-sdk run bundle(-upgrade)
: Change default of the --security-context-config
flag to be legacy
instead of restricted
. (#6261)operator-sdk run bundle
: When creating the CatalogSource, we now set the grpcPodConfig.SecurityContextConfig
to the value of the --security-context-config
flag. (#6261)operator-sdk bundle validate
: Fix a bug in the Kubernetes 1.25 validation logic that would warn that a Kubernetes resource was deprecated without checking the group that contains the resource. (i.e if apps/deployments was deprecated and you used other/deployments you would recieve a warning)". The validation logic will now verify the group and resource before issuing a warning. (#6263)operator-sdk run bundle(-upgrade)
: fix a bug in the logic that would attempt to create a ConfigMap
that contained the entire contents of an FBC. Now if the FBC contents are to large to fit into a single ConfigMap
, the FBC contents will be partitioned and split amongst multiple ConfigMap
resources. (#6262)operator-sdk run bundle(-upgrade)
: Fix a bug where SQLite bundle images were failing to be run properly due to a change in the default channel that is used by run bundle(-upgrade)
when creating a subscription. (#6261)operator-sdk run bundle(-upgrade)
: Update the logic used to set a Registry Pod's PSA configuration to fix a bug where a Pod's containers still had a restrictive SecurityContext even when setting --security-context-config=legacy
. (#6261).spec
field, which is a perfectly valid scenario. Instead of throwing an error scorecard will now issue a suggestion. (#6266)operator-sdk bundle validate
: When checking for Kubernetes APIs deprecated in Kubernetes v1.25.0 the ClusterServiceVersion's CustomResourceDefinitions, ClusterPermissions, and Permissions are now validated to ensure no references to deprecated APIs are being made. (#6119)operator-sdk run bundle(-upgrade)
: fix a bug in the logic that would attempt to create a ConfigMap
that contained the entire contents of an FBC. Now if the FBC contents are to large to fit into a single ConfigMap
, the FBC contents will be partitioned and split amongst multiple ConfigMap
resources. (#6182)operator-sdk bundle validate
: When checking for Kubernetes APIs deprecated in Kubernetes v1.25.0 the ClusterServiceVersion's CustomResourceDefinitions, ClusterPermissions, and Permissions are now validated to ensure no references to deprecated APIs are being made. (#6123)--component-config
flag changes. Previously, the changes with --component-config
flag were not considered by default.
The following are the modifications: 1. If the --component-config
flag is passed then look for - /manager
in manager.yaml
in order to add leader election id. If the component config flag is not passed then check for --leader-elect
flag. 2. In manager_proxy_patch.yaml
file, look for memory: 64Mi
if the component flag is passed flag is passed. If not then look for --leader-elect
. 3. Repeat the same logic for replacing the port number from the file. 4. At the end, update the manager.yaml
file to avoid lint errors. (#6047)1.24
to 1.25
. (#6044)--component-config
flag.
This flag is passed through operator-sdk init
command. If this flag is passed through the command line as an argument then only the controller_manager_config.yaml
file will be scaffolded in the manifest. If it is not passed then it will not scaffold out this file. The command for passing the flag is: operator-sdk init --domain example.com --repo github.com/example/memcached-operator --component-config. (#6047)config-gen
is completely removed from Kubebuilder. As part of this bump, the website content of SDK was updated where the doc is referring to config-gen
. (#6047)ginko/v2
- io/ioutil
packages to either io
or os
since its not longer supported in go1.19. (#6047)--component-config
flag changes. Previously, the changes with --component-config
flag were not considered by default.
The following are the modifications: 1. If the --component-config
flag is passed then look for - /manager
in manager.yaml
in order to add leader election id. If the component config flag is not passed then check for --leader-elect
flag. 2. In manager_proxy_patch.yaml
file, look for memory: 64Mi
if the component flag is passed flag is passed. If not then look for --leader-elect
. 3. Repeat the same logic for replacing the port number from the file. 4. At the end, update the manager.yaml
file to avoid lint errors. (#6047)stages.tests
section add an entrypoint
, in this entrypoint you add the name of the test you want to associate with the selector.
If you have a kuttl test directory called smoke
your entrypoint should have - smoke
as an entry. That way scorecard can pass that into the image and kuttl will run the single test. (#6015)operator-sdk run bundle(-upgrade)
: fixed bug that made it so bundles weren't properly upgraded if the channel used in the bundle wasn't in the same channel as the bundle installed via operator-sdk run bundle
. Using operator-sdk run bundle
will now use a default channel instead of the one in the bundle. (#6042)operator-sdk run bundle(-upgrade)
: fixed bug causing operator-sdk run bundle-upgrade
and operator-sdk run bundle ... --index-image=...
to stall indefinitely. (#6040)Makefile
does not handle converting aarch64
to arm64
. This prevents it from downloading the appropriate binaries.
This change simply adds a call to sed
to convert aarch64
to arm64
. (#5480)$ operator-sdk bundle validate ./bundle --select-optional name=multiarch
. (#5908)WatchAnnotationsChanges
, to trigger reconciliations on annotation changes on watched resources. (#5611)operator-sdk --group=example.com --version=v1alpha1 --kind=Memcached --image=memcached:1.6.15-alpine --image-container-command="memcached,-m=64,modern,-v" --image-container-port="11211" --run-as-user="1001" --plugins="deploy-image/v1-alpha"
More info. (#5965)operator-sdk edit --plugins=grafana.kubebuilder.io/v1-alpha
More info. (#5965)go/v4-alpha
which adds support for Apple Silicon(darwin/arm64
). (#5965)config.yaml
can now read the environment variable SCORECARD_STORAGE
to get a storage path defined in the config.yaml
. (#5829)darwin/arm64
). Release Notes. (#5965)gcr.io/kubebuilder/kube-rbac-proxy
from v0.11.0
to v0.12.0
. More info. (#5903)controller-tools
from 0.9.0
to 0.9.2
. More info. (#5965)controller-runtime
from v0.12.1
to v0.12.2
and Kubernetes dependencies from v0.24.0
to v0.24.2
. More info. (#5965)gcr.io/kubebuilder/kube-rbac-proxy
from 0.12.0
to 0.13.0
. More info. (#5965)kustomize
version from v3.8.7
to v4.5.5
. Release Notes. (#5965)$ operator-sdk bundle validate ./bundle --select-optional name=good-practices
. (#5908)Apr 2021
, the default layout produced is done via the go/v3
. (More info) Check your PROJECT
file to make sure that your project layout is go.kubebuilder.io/v3
, if not please follow the migration guide to upgrade your project. (#5965)olm
version 0.19.1
. (#6000)kustomize/v1
plugin alone. If you are looking to use this project as a base for you to generate other plugins, please use Kubebuilder instead. (#5965)operator-sdk run bundle-upgrade
: fix a bug that caused InstallPlan
s occasionally not being approved when attempting to upgrade a bundle. (#5901)--skip-tls-verify
and --use-http
flags from run bundle(-upgrade). (#5921)