From ac3cb6325b57c9606b47ff3062989e93c220e3a6 Mon Sep 17 00:00:00 2001 From: Jim Dickinson Date: Sun, 22 Nov 2020 20:26:36 -0500 Subject: [PATCH] Release v1.5.0 (#317) * Start release process * Update the all in one manifests * Bump version in the readme to 1.5.0 * Update the CHANGELOG * Bump to release label --- CHANGELOG.md | 33 ++++++++++++++++++++ README.md | 16 +++++----- buildsettings.yaml | 2 +- charts/cass-operator-chart/Chart.yaml | 4 +-- charts/cass-operator-chart/values.yaml | 2 +- docs/user/cass-operator-manifests-v1.15.yaml | 9 +++++- docs/user/cass-operator-manifests-v1.16.yaml | 9 +++++- docs/user/cass-operator-manifests-v1.17.yaml | 9 +++++- docs/user/cass-operator-manifests-v1.18.yaml | 9 +++++- docs/user/cass-operator-manifests-v1.19.yaml | 9 +++++- 10 files changed, 85 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c3d4e8aba..f40fca8a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,38 @@ # Changelog +## v1.5.0 + +Features: +* Allow configuration of the system.log tail-er [#311](https://github.com/datastax/cass-operator/commit/14b1310164e57546cdf1995d44835b63f2dee471) +* Update Kubernetes support to cover 1.15 to 1.19 [#296](https://github.com/datastax/cass-operator/commit/a75754989cd29a38dd6406fdb75a5bad010f782d) [#304](https://github.com/datastax/cass-operator/commit/f34593199c06bb2536d0957eaff487153e36041a) +* Specify more named ports for advanced workloads, and additional ports for ClusterIP service [#289](https://github.com/datastax/cass-operator/commit/b0eae79dae3dc1466ace18b2008d3de81622db5d) [#291](https://github.com/datastax/cass-operator/commit/00c02be24779262a8b89f85e64eb02efb14e2d15) +* Support WATCH_NAMESPACE=* to watch all namespaces [#286](https://github.com/datastax/cass-operator/commit/f856de1cbeafee5fe4ad7154930d20ca743bd9cc) +* Support arbitrary Cassandra and DSE versions, using a regex for validation [#271](https://github.com/datastax/cass-operator/commit/71806eaa1c30e8555abeca9f4db12490e8658e1a) +* Support running cassandra as a non-root cassandra user [#275](https://github.com/datastax/cass-operator/commit/4006e56f6dc2ac2b7cfc4cc7012cad5ee50dbfe8) +* Always gracefully drain Cassandra nodes before pod termination, and make terminationGracePeriodSeconds configurable [#269](https://github.com/datastax/cass-operator/commit/3686fd112e1363b1d1160664d92c2a54b368906f) +* Add canaryUpgradeCount to support canary upgrade of a single node [#258](https://github.com/datastax/cass-operator/commit/f73041cc6f3bb3196b49ffaa615e4d1107350330) +* Support merging all user customizations into the Cassandra podTemplateSpec [#263](https://github.com/datastax/cass-operator/commit/b1851d9ebcd4087a210d8ee3f83b6e5a1ab49516) +* DSE 6.8.4 support [#257](https://github.com/datastax/cass-operator/commit/d4d4e3a49ece233457e0e1deebc9153241fe97be) +* Add arm64 support [#238](https://github.com/datastax/cass-operator/commit/f1f237ea6d3127264a014ad3df79d15964a01206) +* Support safely scaling down a datacenter, decommissioning Cassandra nodes [#242](https://github.com/datastax/cass-operator/commit/8d0516a7b5e7d1198cf8ed2de7b3968ef9e660af) [#265](https://github.com/datastax/cass-operator/commit/e6a420cf12c9402cc038f30879bc1ee8556f487a) +* Add support to override the default registry for all container images [#228](https://github.com/datastax/cass-operator/commit/f7ef6c81473841e42a9a581b44b1f33e1b4ab4c1) +* Better helm chart support for branch / master builds on private Docker registries [#236](https://github.com/datastax/cass-operator/commit/3516aa1993b06b405acf51476c327bec160070a1) +* Support for specific reconciliation logic in VMware k8s environments [#204](https://github.com/datastax/cass-operator/commit/e7d20fbb365bc7679856d2c84a1af70f73167b57) [#206](https://github.com/datastax/cass-operator/commit/a853063b9f08eb1a64cb248e23b5a4a5db92a5ac) [#203](https://github.com/datastax/cass-operator/commit/10ff0812aa0138a2eb04c588fbe625f6a69ce833) [#224](https://github.com/datastax/cass-operator/commit/b4d7ae4b0da149eb896bacfae824ed6547895dbb) [#259](https://github.com/datastax/cass-operator/commit/a90f03c17f3e9675c1ceff37a2a7c0c0c85950a1) [#288](https://github.com/datastax/cass-operator/commit/c7c159d53d34b390e7966477b0fc2ed2f5ec333e) + +Bug fixes: +* Increase default init container CPU for better startup performance [#261](https://github.com/datastax/cass-operator/commit/0eece8718b7a7a48868c260e88684c0f98cdc05b) +* Re-enable the most common quiet period [#253](https://github.com/datastax/cass-operator/commit/67217d8fc384652753331f5a1ae9cadd45ebc0cb) +* Added label to all-pods service to narrow metrics scrape selection [#277](https://github.com/datastax/cass-operator/commit/193afa5524e85a90cea84afe8167b356f67d365a) + + +Docs/tests: +* Add test for infinite reconcile [#220](https://github.com/datastax/cass-operator/commit/361ef2d5da59cd48fab7d4d58e3075051515b32c) +* Added keys from datastax/charts and updated README [#221](https://github.com/datastax/cass-operator/commit/5a56e98856d0c483eb4c415bd3c8b8292ffffe4b) +* Support integration tests with k3d v3 [#248](https://github.com/datastax/cass-operator/commit/06804bd0b3062900c10a4cad3d3124e83cf17bf0) +* Default to KIND for integration tests [#252](https://github.com/datastax/cass-operator/commit/dcaec731c5d0aefc2d2249c32592a275c42a46f0) +* Run oss/dse integration smoke tests in github workflow [#267](https://github.com/datastax/cass-operator/commit/08ecb0977e09b547c035e280b99f2c36fa1d5806) + + ## v1.4.1 Features: diff --git a/README.md b/README.md index a463513e2..139d4a17b 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,9 @@ The DataStax Kubernetes Operator for Apache Cassandra® Quick start: ```console # *** This is for GKE Regular Channel - k8s 1.16 -> Adjust based on your cloud or storage options -kubectl create -f https://raw.githubusercontent.com/datastax/cass-operator/v1.4.1/docs/user/cass-operator-manifests-v1.16.yaml -kubectl create -f https://raw.githubusercontent.com/datastax/cass-operator/v1.4.1/operator/k8s-flavors/gke/storage.yaml -kubectl -n cass-operator create -f https://raw.githubusercontent.com/datastax/cass-operator/v1.4.1/operator/example-cassdc-yaml/cassandra-3.11.x/example-cassdc-minimal.yaml +kubectl create -f https://raw.githubusercontent.com/datastax/cass-operator/v1.5.0/docs/user/cass-operator-manifests-v1.16.yaml +kubectl create -f https://raw.githubusercontent.com/datastax/cass-operator/v1.5.0/operator/k8s-flavors/gke/storage.yaml +kubectl -n cass-operator create -f https://raw.githubusercontent.com/datastax/cass-operator/v1.5.0/operator/example-cassdc-yaml/cassandra-3.11.x/example-cassdc-minimal.yaml ``` ### Loading the operator @@ -19,7 +19,7 @@ Installing the Cass Operator itself is straightforward. We have provided manifes ```console K8S_VER=v1.16 -kubectl apply -f https://raw.githubusercontent.com/datastax/cass-operator/v1.4.1/docs/user/cass-operator-manifests-$K8S_VER.yaml +kubectl apply -f https://raw.githubusercontent.com/datastax/cass-operator/v1.5.0/docs/user/cass-operator-manifests-$K8S_VER.yaml ``` Note that since the manifest will install a [Custom Resource Definition](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/), the user running the above command will need cluster-admin privileges. @@ -52,7 +52,7 @@ reclaimPolicy: Delete Apply the above as follows: ``` -kubectl apply -f https://raw.githubusercontent.com/datastax/cass-operator/v1.4.1/operator/k8s-flavors/gke/storage.yaml +kubectl apply -f https://raw.githubusercontent.com/datastax/cass-operator/v1.5.0/operator/k8s-flavors/gke/storage.yaml ``` ### Creating a CassandraDatacenter @@ -92,7 +92,7 @@ spec: Apply the above as follows: ```console -kubectl -n cass-operator apply -f https://raw.githubusercontent.com/datastax/cass-operator/v1.4.1/operator/example-cassdc-yaml/cassandra-3.11.x/example-cassdc-minimal.yaml +kubectl -n cass-operator apply -f https://raw.githubusercontent.com/datastax/cass-operator/v1.5.0/operator/example-cassdc-yaml/cassandra-3.11.x/example-cassdc-minimal.yaml ``` You can check the status of pods in the Cassandra cluster as follows: @@ -187,7 +187,7 @@ webhookClusterRoleName: cass-operator-webhook webhookClusterRoleBindingName: cass-operator-webhook deploymentName: cass-operator deploymentReplicas: 1 -image: "datastax/cass-operator:1.4.1" +image: "datastax/cass-operator:1.5.0" imagePullPolicy: IfNotPresent imagePullSecret: "" ``` @@ -406,7 +406,7 @@ kubectl delete cassdcs --all-namespaces --all Remove the operator Deployment, CRD, etc. ``` -kubectl delete -f https://raw.githubusercontent.com/datastax/cass-operator/v1.4.1/docs/user/cass-operator-manifests-v1.16.yaml +kubectl delete -f https://raw.githubusercontent.com/datastax/cass-operator/v1.5.0/docs/user/cass-operator-manifests-v1.16.yaml ``` ## Contacts diff --git a/buildsettings.yaml b/buildsettings.yaml index ad9dad202..0c649e0f9 100644 --- a/buildsettings.yaml +++ b/buildsettings.yaml @@ -2,7 +2,7 @@ version: major: 1 minor: 5 patch: 0 - prerelease: "snapshot" + prerelease: "release" jenkins: master: plugins: diff --git a/charts/cass-operator-chart/Chart.yaml b/charts/cass-operator-chart/Chart.yaml index f944eddc5..964b7e5d2 100644 --- a/charts/cass-operator-chart/Chart.yaml +++ b/charts/cass-operator-chart/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v2 name: cass-operator -version: 1.4.1 +version: 1.5.0 description: Helm chart for Cass Operator. -appVersion: 1.4.1 +appVersion: 1.5.0 home: https://github.com/datastax/cass-operator maintainers: - name: Cassandra Operator Team diff --git a/charts/cass-operator-chart/values.yaml b/charts/cass-operator-chart/values.yaml index ed5dbfe1b..18cf89ed4 100644 --- a/charts/cass-operator-chart/values.yaml +++ b/charts/cass-operator-chart/values.yaml @@ -9,6 +9,6 @@ webhookClusterRoleName: cass-operator-webhook webhookClusterRoleBindingName: cass-operator-webhook deploymentName: cass-operator deploymentReplicas: 1 -defaultImage: "datastax/cass-operator:1.4.1" +defaultImage: "datastax/cass-operator:1.5.0" imagePullPolicy: IfNotPresent imagePullSecret: "" diff --git a/docs/user/cass-operator-manifests-v1.15.yaml b/docs/user/cass-operator-manifests-v1.15.yaml index e07d3475c..ed052101f 100644 --- a/docs/user/cass-operator-manifests-v1.15.yaml +++ b/docs/user/cass-operator-manifests-v1.15.yaml @@ -112,6 +112,10 @@ spec: value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' type: object type: object + disableSystemLoggerSidecar: + description: Configuration for disabling the simple log tailing sidecar + container. Our default is to have it enabled. + type: boolean dockerImageRunsAsCassandra: description: Does the Server Docker image run as the Cassandra user? type: boolean @@ -6189,6 +6193,9 @@ spec: description: This secret defines the username and password for the Cassandra server superuser. If it is omitted, we will generate a secret instead. type: string + systemLoggerImage: + description: Container image for the log tailing sidecar container. + type: string systemLoggerResources: description: Kubernetes resource requests and limits per system logger container. @@ -6495,7 +6502,7 @@ spec: value: cass-operator - name: SKIP_VALIDATING_WEBHOOK value: "FALSE" - image: datastax/cass-operator:1.4.1 + image: datastax/cass-operator:1.5.0 imagePullPolicy: IfNotPresent livenessProbe: exec: diff --git a/docs/user/cass-operator-manifests-v1.16.yaml b/docs/user/cass-operator-manifests-v1.16.yaml index e07d3475c..ed052101f 100644 --- a/docs/user/cass-operator-manifests-v1.16.yaml +++ b/docs/user/cass-operator-manifests-v1.16.yaml @@ -112,6 +112,10 @@ spec: value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' type: object type: object + disableSystemLoggerSidecar: + description: Configuration for disabling the simple log tailing sidecar + container. Our default is to have it enabled. + type: boolean dockerImageRunsAsCassandra: description: Does the Server Docker image run as the Cassandra user? type: boolean @@ -6189,6 +6193,9 @@ spec: description: This secret defines the username and password for the Cassandra server superuser. If it is omitted, we will generate a secret instead. type: string + systemLoggerImage: + description: Container image for the log tailing sidecar container. + type: string systemLoggerResources: description: Kubernetes resource requests and limits per system logger container. @@ -6495,7 +6502,7 @@ spec: value: cass-operator - name: SKIP_VALIDATING_WEBHOOK value: "FALSE" - image: datastax/cass-operator:1.4.1 + image: datastax/cass-operator:1.5.0 imagePullPolicy: IfNotPresent livenessProbe: exec: diff --git a/docs/user/cass-operator-manifests-v1.17.yaml b/docs/user/cass-operator-manifests-v1.17.yaml index e07d3475c..ed052101f 100644 --- a/docs/user/cass-operator-manifests-v1.17.yaml +++ b/docs/user/cass-operator-manifests-v1.17.yaml @@ -112,6 +112,10 @@ spec: value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' type: object type: object + disableSystemLoggerSidecar: + description: Configuration for disabling the simple log tailing sidecar + container. Our default is to have it enabled. + type: boolean dockerImageRunsAsCassandra: description: Does the Server Docker image run as the Cassandra user? type: boolean @@ -6189,6 +6193,9 @@ spec: description: This secret defines the username and password for the Cassandra server superuser. If it is omitted, we will generate a secret instead. type: string + systemLoggerImage: + description: Container image for the log tailing sidecar container. + type: string systemLoggerResources: description: Kubernetes resource requests and limits per system logger container. @@ -6495,7 +6502,7 @@ spec: value: cass-operator - name: SKIP_VALIDATING_WEBHOOK value: "FALSE" - image: datastax/cass-operator:1.4.1 + image: datastax/cass-operator:1.5.0 imagePullPolicy: IfNotPresent livenessProbe: exec: diff --git a/docs/user/cass-operator-manifests-v1.18.yaml b/docs/user/cass-operator-manifests-v1.18.yaml index e07d3475c..ed052101f 100644 --- a/docs/user/cass-operator-manifests-v1.18.yaml +++ b/docs/user/cass-operator-manifests-v1.18.yaml @@ -112,6 +112,10 @@ spec: value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' type: object type: object + disableSystemLoggerSidecar: + description: Configuration for disabling the simple log tailing sidecar + container. Our default is to have it enabled. + type: boolean dockerImageRunsAsCassandra: description: Does the Server Docker image run as the Cassandra user? type: boolean @@ -6189,6 +6193,9 @@ spec: description: This secret defines the username and password for the Cassandra server superuser. If it is omitted, we will generate a secret instead. type: string + systemLoggerImage: + description: Container image for the log tailing sidecar container. + type: string systemLoggerResources: description: Kubernetes resource requests and limits per system logger container. @@ -6495,7 +6502,7 @@ spec: value: cass-operator - name: SKIP_VALIDATING_WEBHOOK value: "FALSE" - image: datastax/cass-operator:1.4.1 + image: datastax/cass-operator:1.5.0 imagePullPolicy: IfNotPresent livenessProbe: exec: diff --git a/docs/user/cass-operator-manifests-v1.19.yaml b/docs/user/cass-operator-manifests-v1.19.yaml index e07d3475c..ed052101f 100644 --- a/docs/user/cass-operator-manifests-v1.19.yaml +++ b/docs/user/cass-operator-manifests-v1.19.yaml @@ -112,6 +112,10 @@ spec: value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' type: object type: object + disableSystemLoggerSidecar: + description: Configuration for disabling the simple log tailing sidecar + container. Our default is to have it enabled. + type: boolean dockerImageRunsAsCassandra: description: Does the Server Docker image run as the Cassandra user? type: boolean @@ -6189,6 +6193,9 @@ spec: description: This secret defines the username and password for the Cassandra server superuser. If it is omitted, we will generate a secret instead. type: string + systemLoggerImage: + description: Container image for the log tailing sidecar container. + type: string systemLoggerResources: description: Kubernetes resource requests and limits per system logger container. @@ -6495,7 +6502,7 @@ spec: value: cass-operator - name: SKIP_VALIDATING_WEBHOOK value: "FALSE" - image: datastax/cass-operator:1.4.1 + image: datastax/cass-operator:1.5.0 imagePullPolicy: IfNotPresent livenessProbe: exec: