Releases: operator-framework/operator-sdk
Releases · operator-framework/operator-sdk
v0.4.0
v0.4.0
Added
- A new command
operator-sdk migratewhich adds a main.go source file and any associated source files for an operator that is not of the "go" type. (#887 and #897) - New commands
operator-sdk run ansibleandoperator-sdk run helmwhich run the SDK as ansible and helm operator processes, respectively. These are intended to be used when running in a Pod inside a cluster. Developers wanting to run their operator locally should continue to useup local. (#887 and #897) - Ansible operator proxy added the cache handler which allows the get requests to use the operators cache. #760
- Ansible operator proxy added ability to dynamically watch dependent resource that were created by ansible operator. #857
- Ansible-based operators have leader election turned on by default. When upgrading, add environment variable
POD_NAMEto your operator's Deployment using the Kubernetes downward API. To see an example, runoperator-sdk new --type=ansible ...and see filedeploy/operator.yaml.
Changed
- The official images for the Ansible and Helm operators have moved! Travis now builds, tags, and pushes operator base images during CI (#832).
Bug Fixes
- Fixes deadlocks during operator deployment rollouts, which were caused by operator pods requiring a leader election lock to become ready (#932)
Note: See how to upgrade your project to the version v0.4+ by checking the Version Upgrade Guide
v0.3.0
v0.3.0
Added
- Helm type operator generation support (#776)
Changed
- The SDK's Kubernetes Golang dependency versions/revisions have been updated from
v1.11.2tov1.12.3. (#807) - The controller-runtime version has been updated from
v0.1.4tov0.1.8. See thev0.1.8release notes for details. - The SDK now generates the CRD with the status subresource enabled by default. See the client doc on how to update the status subresource. (#787)
Note: See how to upgrade your project to the version v0.3+ by checking the Version Upgrade Guide
v0.2.1
v0.2.1
Bug Fixes
- Pin controller-runtime version to v0.1.4 to fix dependency issues and pin ansible idna package to version 2.7 (#831)
Note: See how to upgrade your project to the version v0.2+ by checking the Version Upgrade Guide
v0.2.0
v0.2.0
Changed
- The SDK now uses logr as the default logger to unify the logging output with the controller-runtime logs. Users can still use a logger of their own choice. See the logging doc on how the SDK initializes and uses logr.
- Ansible Operator CR status better aligns with conventions. (#639)
Added
- A new command
operator-sdk print-depswhich prints Golang packages and versions expected by the current Operator SDK version. Supplying--as-fileprints packages and versions in Gopkg.toml format. (#772) - Add
up-localflag totest localsubcommand (#781) - Add
no-setupflag totest localsubcommand (#770) - Add
imageflag totest localsubcommand (#768) - Ansible Operator log output includes much more information for troubleshooting ansible errors. (#713)
- Ansible Operator periodic reconciliation can be disabled (#739)
Bug fixes
- Make operator-sdk command work with composed GOPATH (#676)
- Ansible Operator "--kubeconfig" command line option fixed (#705)
Note: See how to upgrade your project to the version v0.2+ by checking the Version Upgrade Guide
v0.1.1
v0.1.0
v0.1.0
Changed
- Use controller runtime library for controller and client APIs
- See migration guide to migrate your project to
v0.1.0
v0.0.7
v0.0.6
v0.0.6
Added
- Added
operator-sdk upcommand to help deploy an operator. Currently supports running an operator locally against an existing cluster e.goperator-sdk up local --kubeconfig=<path-to-kubeconfig> --namespace=<operator-namespace>. Seeoperator-sdk up -hfor help. #219 #274 - Added initial default metrics to be captured and exposed by Prometheus. #323 exposes the metrics port and #349 adds the initial default metrics.
- Added initial test framework for operators #377, #392, #393
Changed
- All the modules in
pkg/sdkhave been combined into a single package.action,handler,informertypesandquerypkgs have been consolidated intopkg/sdk. #242 - The SDK exposes the Kubernetes clientset via
k8sclient.GetKubeClient()#295 - The SDK now vendors the k8s code-generators for an operator instead of using the prebuilt image
gcr.io/coreos-k8s-scale-testing/codegen:1.9.3#319 - The SDK exposes the Kubernetes rest config via
k8sclient.GetKubeConfig()#338 - Use
time.Durationinstead ofintforsdk.Watch#427
Fixed
- The cache of available clients is being reset every minute for discovery of newely added resources to a cluster. #280