diff --git a/CHANGELOG.md b/CHANGELOG.md
index e7e22d41..3e7abe0e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,42 @@
# CHANGELOG
+## [v1.9.1](https://github.com/StarRocks/starrocks-kubernetes-operator/releases/tag/v1.9.1)
+
+Release Notes for starrocks-kubernetes-operator v1.9.0
+
+We are thrilled to announce the release of StarRocks Kubernetes Operator v1.9.1. This release introduces several
+enhancements and bug fixes to improve the user experience of deploying and managing StarRocks
+clusters on Kubernetes.
+
+### What's New
+
+There are enhancements in this release.
+
+1. **[chart]** When you set logStorageSize to 0, the operator will not create PVC for log
+ storage [#398](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/398).
+2. **[operator]** Checked volumes and mount paths to avoid duplication
+ error [#388](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/388)
+3. **[operator]** Disabled FE scale to 1 [#394](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/394)
+4. **[operator]** Supported use of map to define feEnvVars/beEnvVars/cnEnvVars to merge on multiple values files (#396)
+5. **[operator]** exposed `spec.containers.securityContext.capabilities` for user to customize the capabilities of
+ containers. [#404](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/404)
+
+### BugFix
+
+1. **[operator]** Supported to update service annotations
+ fields [#402](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/402) [#399](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/399)
+2. **[operator]** Switched to using patch method instead of update method to modify statefulset and
+ deployment [#397](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/397).
+ This solves the problem that when CN + HPA is enabled, upgrading CN will cause all CN pods to be terminated and
+ restarted.
+3. **[operator]** Switched to using Patch method instead of Update to modify service
+ object [#387](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/387). This solves the
+ problem that when cloud provider is used, the service object will be modified by cloud provider, and the operator
+ will overwrite the modification.
+4. **[operator]** Considered Cn Replicas when calculating component
+ hash [#392](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/392)
+5. **[chart]** Corrected typo in storageSpec [#385](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/385)
+
## [v1.9.0](https://github.com/StarRocks/starrocks-kubernetes-operator/releases/tag/v1.9.0)
Release Notes for starrocks-kubernetes-operator v1.9.0
@@ -10,25 +47,36 @@ clusters on Kubernetes.
### What's New
-1. [Feature] Add StarRocksWarehouse CRD to support StarRocks Warehouse Feature (#323). Note: warehouse is an
+1. [Feature] Add StarRocksWarehouse CRD to support StarRocks Warehouse
+ Feature [#323](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/323). Note: warehouse is an
enterprise feature for StarRocks.
-2. [Enhancement] Use StarRocksCluster State to log errors when subController apply failed (#359): We have improved error
+2. [Enhancement] Use StarRocksCluster State to log errors when subController apply
+ failed [#359](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/359): We have improved error
logging by using the StarRocksCluster status.State when the subController apply operation fails.
-3. [Enhancement] Support to mount emptyDir in storageVolumes (#324): We have added support to mount emptyDir in
+3. [Enhancement] Support to mount emptyDir in
+ storageVolumes [#324](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/324): We have added support to
+ mount emptyDir in
storageVolumes.
### BugFix
-1. [BugFix] We have fixed an issue where the cluster status phase was not in sync with the component.(#380)
-2. [BugFix] We have fixed an issue where the HPA was not removed when the autoScalingPolicy was removed.(#379)
-3. [BugFix] We have fixed an issue where the HPA resource was not removed when the CN spec was removed.(#357)
+1. [BugFix] We have fixed an issue where the cluster status phase was not in sync with the
+ component.[#380](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/380)
+2. [BugFix] We have fixed an issue where the HPA was not removed when the autoScalingPolicy was
+ removed.[#379](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/379)
+3. [BugFix] We have fixed an issue where the HPA resource was not removed when the CN spec was
+ removed.[#357](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/357)
### Maintenance
-1. We have improved the setup of the Kubernetes environment for unit tests by using setup-envtest. (#347)
-2. We have added unit tests and ensured that the code coverage is at least 65%. (#354)
-3. We have updated the script to generate the API reference documentation.(#350)
-4. We have switched to using zap as the logger for better logging capabilities.(#341)
+1. We have improved the setup of the Kubernetes environment for unit tests by using
+ setup-envtest. [#347](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/347)
+2. We have added unit tests and ensured that the code coverage is at least
+ 65%. [#354](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/354)
+3. We have updated the script to generate the API reference
+ documentation.[#350](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/350)
+4. We have switched to using zap as the logger for better logging
+ capabilities.[#341](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/341)
We encourage you to update to this new version and benefit from these improvements. As always, your feedback is very
welcome.
@@ -82,7 +130,7 @@ and enhancements. Here are the key updates:
### Bug Fixes
1. Fix the problem of nginx sending the request body to FE when redirecting the stream load request, which may cause
- the stream load to fail. (#303)
+ the stream load to fail. [#303](https://github.com/StarRocks/starrocks-kubernetes-operator/pull/303)
### Maintenance
diff --git a/deploy/operator.yaml b/deploy/operator.yaml
index f36a2952..a701a02e 100644
--- a/deploy/operator.yaml
+++ b/deploy/operator.yaml
@@ -174,7 +174,7 @@ spec:
kubectl.kubernetes.io/default-container: manager
labels:
app: kube-starrocks-operator
- version: 1.9.0
+ version: 1.9.1
spec:
automountServiceAccountToken: true
containers:
@@ -187,7 +187,7 @@ spec:
env:
- name: TZ
value: Asia/Shanghai
- image: "starrocks/operator:v1.9.0"
+ image: "starrocks/operator:v1.9.1"
imagePullPolicy: Always
name: manager
securityContext:
diff --git a/doc/api.md b/doc/api.md
index c613ae3c..c8ea989d 100644
--- a/doc/api.md
+++ b/doc/api.md
@@ -2071,5 +2071,5 @@ AutoScalingPolicy
Generated with gen-crd-api-reference-docs
-on git commit b7b3c3f
.
+on git commit 13a5c05
.
diff --git a/helm-charts/charts/kube-starrocks/Chart.yaml b/helm-charts/charts/kube-starrocks/Chart.yaml
index 000769e3..f2abcdb1 100644
--- a/helm-charts/charts/kube-starrocks/Chart.yaml
+++ b/helm-charts/charts/kube-starrocks/Chart.yaml
@@ -25,7 +25,7 @@ maintainers:
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 1.9.0
+version: 1.9.1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
diff --git a/helm-charts/charts/kube-starrocks/charts/operator/Chart.yaml b/helm-charts/charts/kube-starrocks/charts/operator/Chart.yaml
index 9ca98b70..fc4d72c3 100644
--- a/helm-charts/charts/kube-starrocks/charts/operator/Chart.yaml
+++ b/helm-charts/charts/kube-starrocks/charts/operator/Chart.yaml
@@ -25,13 +25,13 @@ maintainers:
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 1.9.0
+version: 1.9.1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
-appVersion: 1.9.0
+appVersion: 1.9.1
kubeVersion: ">=1.18.3-0"
diff --git a/helm-charts/charts/kube-starrocks/charts/operator/values.yaml b/helm-charts/charts/kube-starrocks/charts/operator/values.yaml
index ceba8a42..ef323189 100644
--- a/helm-charts/charts/kube-starrocks/charts/operator/values.yaml
+++ b/helm-charts/charts/kube-starrocks/charts/operator/values.yaml
@@ -32,7 +32,7 @@ starrocksOperator:
image:
# image sliced by "repository:tag"
repository: starrocks/operator
- tag: v1.9.0
+ tag: v1.9.1
imagePullPolicy: Always
replicaCount: 1
resources:
diff --git a/helm-charts/charts/kube-starrocks/charts/starrocks/Chart.yaml b/helm-charts/charts/kube-starrocks/charts/starrocks/Chart.yaml
index 4ce243e6..96305c55 100644
--- a/helm-charts/charts/kube-starrocks/charts/starrocks/Chart.yaml
+++ b/helm-charts/charts/kube-starrocks/charts/starrocks/Chart.yaml
@@ -25,7 +25,7 @@ maintainers:
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 1.9.0
+version: 1.9.1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
diff --git a/helm-charts/charts/kube-starrocks/charts/starrocks/values.yaml b/helm-charts/charts/kube-starrocks/charts/starrocks/values.yaml
index 548115ff..476981b8 100644
--- a/helm-charts/charts/kube-starrocks/charts/starrocks/values.yaml
+++ b/helm-charts/charts/kube-starrocks/charts/starrocks/values.yaml
@@ -146,6 +146,7 @@ starrocksFESpec:
cpu: 8
memory: 8Gi
# fe storageSpec for persistent metadata.
+ # Note: Once set, the following fields will not be allowed to be modified.
storageSpec:
name: ""
# the storageClassName represent the used storageclass name. if not set will use k8s cluster default storageclass.
@@ -154,7 +155,8 @@ starrocksFESpec:
# the persistent volume size, default 10Gi.
# fe container stop running if the disk free space which the fe meta directory residents, is less than 5Gi.
storageSize: 10Gi
- # Setting this parameter can persist log storage
+ # Setting this parameter can persist log storage.
+ # If you set it to 0Gi, the related PVC will not be created, and the log will not be persisted.
logStorageSize: 5Gi
# mount other volumes if necessary.
# Note: please use storageSpec field for persistent metadata and log.
@@ -334,6 +336,7 @@ starrocksCnSpec:
cpu: 4
memory: 8Gi
# specify storageclass name and request size.
+ # Note: Once set, the following fields will not be allowed to be modified.
storageSpec:
# the name of volume for mount. if not will use emptyDir.
name: ""
@@ -343,6 +346,7 @@ starrocksCnSpec:
# the storage size of persistent volume for data.
storageSize: 1Ti
# the storage size of persistent volume for log.
+ # If you set it to 0Gi, the related PVC will not be created, and the log will not be persisted.
logStorageSize: 1Gi
# mount other volumes if necessary.
# Note: please use storageSpec field for persistent storage data and log.
@@ -488,6 +492,7 @@ starrocksBeSpec:
cpu: 8
memory: 8Gi
# be storageSpec for persistent storage.
+ # Note: Once set, the following fields will not be allowed to be modified.
storageSpec:
# the name of volume for mount. if not will use emptyDir.
name: ""
@@ -496,6 +501,7 @@ starrocksBeSpec:
storageClassName: ""
storageSize: 1Ti
# Setting this parameter can persist log storage
+ # If you set it to 0Gi, the related PVC will not be created, and the log will not be persisted.
logStorageSize: 1Gi
# mount other volumes if necessary.
# Note: please use storageSpec field for persistent storage data and log.
diff --git a/helm-charts/charts/kube-starrocks/values.yaml b/helm-charts/charts/kube-starrocks/values.yaml
index 165fa0e6..eb24a560 100644
--- a/helm-charts/charts/kube-starrocks/values.yaml
+++ b/helm-charts/charts/kube-starrocks/values.yaml
@@ -39,7 +39,7 @@ operator:
image:
# image sliced by "repository:tag"
repository: starrocks/operator
- tag: v1.9.0
+ tag: v1.9.1
imagePullPolicy: Always
replicaCount: 1
resources:
@@ -226,6 +226,7 @@ starrocks:
cpu: 8
memory: 8Gi
# fe storageSpec for persistent metadata.
+ # Note: Once set, the following fields will not be allowed to be modified.
storageSpec:
name: ""
# the storageClassName represent the used storageclass name. if not set will use k8s cluster default storageclass.
@@ -234,7 +235,8 @@ starrocks:
# the persistent volume size, default 10Gi.
# fe container stop running if the disk free space which the fe meta directory residents, is less than 5Gi.
storageSize: 10Gi
- # Setting this parameter can persist log storage
+ # Setting this parameter can persist log storage.
+ # If you set it to 0Gi, the related PVC will not be created, and the log will not be persisted.
logStorageSize: 5Gi
# mount other volumes if necessary.
# Note: please use storageSpec field for persistent metadata and log.
@@ -414,6 +416,7 @@ starrocks:
cpu: 4
memory: 8Gi
# specify storageclass name and request size.
+ # Note: Once set, the following fields will not be allowed to be modified.
storageSpec:
# the name of volume for mount. if not will use emptyDir.
name: ""
@@ -423,6 +426,7 @@ starrocks:
# the storage size of persistent volume for data.
storageSize: 1Ti
# the storage size of persistent volume for log.
+ # If you set it to 0Gi, the related PVC will not be created, and the log will not be persisted.
logStorageSize: 1Gi
# mount other volumes if necessary.
# Note: please use storageSpec field for persistent storage data and log.
@@ -568,6 +572,7 @@ starrocks:
cpu: 8
memory: 8Gi
# be storageSpec for persistent storage.
+ # Note: Once set, the following fields will not be allowed to be modified.
storageSpec:
# the name of volume for mount. if not will use emptyDir.
name: ""
@@ -576,6 +581,7 @@ starrocks:
storageClassName: ""
storageSize: 1Ti
# Setting this parameter can persist log storage
+ # If you set it to 0Gi, the related PVC will not be created, and the log will not be persisted.
logStorageSize: 1Gi
# mount other volumes if necessary.
# Note: please use storageSpec field for persistent storage data and log.
diff --git a/helm-charts/charts/warehouse/Chart.yaml b/helm-charts/charts/warehouse/Chart.yaml
index a3b3a861..8d3e6f0e 100644
--- a/helm-charts/charts/warehouse/Chart.yaml
+++ b/helm-charts/charts/warehouse/Chart.yaml
@@ -23,7 +23,7 @@ maintainers:
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
-version: 1.9.0
+version: 1.9.1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
diff --git a/index.yaml b/index.yaml
index 73e6988b..476093dd 100644
--- a/index.yaml
+++ b/index.yaml
@@ -1,6 +1,33 @@
apiVersion: v1
entries:
kube-starrocks:
+ - apiVersion: v2
+ appVersion: 3.2-latest
+ created: "2024-01-18T10:41:12.137421+08:00"
+ description: kube-starrocks includes two subcharts, operator and starrocks
+ digest: 392d67e5b1902e6b566add19a7c39e2d3491aaf537d44ddac20f3b92fd212bbc
+ home: https://github.com/StarRocks/starrocks-kubernetes-operator
+ icon: https://avatars.githubusercontent.com/u/88238841
+ keywords:
+ - operator
+ - starrocks
+ - database
+ - olap
+ kubeVersion: '>=1.18.3-0'
+ maintainers:
+ - email: caixiaohua@starrocks.com
+ name: Kevin Cai
+ - email: shensida@starrocks.com
+ name: SidaShen
+ - email: yandongxiao@starrocks.com
+ name: Dongxiao Yan
+ name: kube-starrocks
+ sources:
+ - https://github.com/StarRocks/starrocks
+ type: application
+ urls:
+ - https://github.com/StarRocks/starrocks-kubernetes-operator/releases/download/v1.9.1/kube-starrocks-1.9.1.tgz
+ version: 1.9.1
- apiVersion: v2
appVersion: 3.1-latest
created: "2024-01-04T17:29:08.143527+08:00"
@@ -360,6 +387,33 @@ entries:
- https://github.com/StarRocks/helm-charts/releases/download/kube-starrocks-1.6.1/kube-starrocks-1.6.1.tgz
version: 1.6.1
operator:
+ - apiVersion: v2
+ appVersion: 1.9.1
+ created: "2024-01-18T10:41:14.409568+08:00"
+ description: A Helm chart for StarRocks operator
+ digest: d1450a6c6ff1a4ee35e22cc5321d490ff8ff920f95a44f92195c746211e1daa4
+ home: https://github.com/StarRocks/starrocks-kubernetes-operator
+ icon: https://avatars.githubusercontent.com/u/88238841
+ keywords:
+ - operator
+ - starrocks
+ - database
+ - olap
+ kubeVersion: '>=1.18.3-0'
+ maintainers:
+ - email: caixiaohua@starrocks.com
+ name: Kevin Cai
+ - email: shensida@starrocks.com
+ name: SidaShen
+ - email: yandongxiao@starrocks.com
+ name: Dongxiao Yan
+ name: operator
+ sources:
+ - https://github.com/StarRocks/starrocks
+ type: application
+ urls:
+ - https://github.com/StarRocks/starrocks-kubernetes-operator/releases/download/v1.9.1/operator-1.9.1.tgz
+ version: 1.9.1
- apiVersion: v2
appVersion: 1.9.0
created: "2024-01-04T17:29:10.339435+08:00"
@@ -631,6 +685,33 @@ entries:
- https://github.com/StarRocks/starrocks-kubernetes-operator/releases/download/v1.8.0/operator-1.8.0.tgz
version: 1.8.0
starrocks:
+ - apiVersion: v2
+ appVersion: 3.2-latest
+ created: "2024-01-18T10:41:16.677917+08:00"
+ description: A Helm chart for StarRocks cluster
+ digest: 84587e58b56adf435c8b0fbd40172e1abb39bc9629e9c75691bcf6c58e36da30
+ home: https://github.com/StarRocks/starrocks-kubernetes-operator
+ icon: https://avatars.githubusercontent.com/u/88238841
+ keywords:
+ - operator
+ - starrocks
+ - database
+ - olap
+ kubeVersion: '>=1.18.3-0'
+ maintainers:
+ - email: caixiaohua@starrocks.com
+ name: Kevin Cai
+ - email: shensida@starrocks.com
+ name: SidaShen
+ - email: yandongxiao@starrocks.com
+ name: Dongxiao Yan
+ name: starrocks
+ sources:
+ - https://github.com/StarRocks/starrocks
+ type: application
+ urls:
+ - https://github.com/StarRocks/starrocks-kubernetes-operator/releases/download/v1.9.1/starrocks-1.9.1.tgz
+ version: 1.9.1
- apiVersion: v2
appVersion: 3.1-latest
created: "2024-01-04T17:29:12.538365+08:00"
@@ -902,6 +983,32 @@ entries:
- https://github.com/StarRocks/starrocks-kubernetes-operator/releases/download/v1.8.0/starrocks-1.8.0.tgz
version: 1.8.0
warehouse:
+ - apiVersion: v2
+ appVersion: 3.2-latest
+ created: "2024-01-18T10:41:19.386772+08:00"
+ description: Warehouse is currently a feature of the StarRocks Enterprise Edition.
+ digest: cead81aec6beb7b5a31944427fc8f592a04bf5332faa366e45e9bb3738edea14
+ home: https://github.com/StarRocks/starrocks-kubernetes-operator
+ icon: https://avatars.githubusercontent.com/u/88238841
+ keywords:
+ - operator
+ - starrocks
+ - database
+ - olap
+ - multi-warehouse
+ kubeVersion: '>=1.18.3-0'
+ maintainers:
+ - email: caixiaohua@starrocks.com
+ name: Kevin Cai
+ - email: yandongxiao@starrocks.com
+ name: Dongxiao Yan
+ name: warehouse
+ sources:
+ - https://github.com/StarRocks/starrocks
+ type: application
+ urls:
+ - https://github.com/StarRocks/starrocks-kubernetes-operator/releases/download/v1.9.1/warehouse-1.9.1.tgz
+ version: 1.9.1
- apiVersion: v2
appVersion: 3.1-latest
created: "2024-01-04T17:29:14.816308+08:00"
@@ -928,4 +1035,4 @@ entries:
urls:
- https://github.com/StarRocks/starrocks-kubernetes-operator/releases/download/v1.9.0/warehouse-1.9.0.tgz
version: 1.9.0
-generated: "2024-01-04T17:29:14.815154+08:00"
+generated: "2024-01-18T10:41:19.386213+08:00"
diff --git a/scripts/change-pr-number-to-link.go b/scripts/change-pr-number-to-link.go
new file mode 100644
index 00000000..731b5820
--- /dev/null
+++ b/scripts/change-pr-number-to-link.go
@@ -0,0 +1,37 @@
+package main
+
+import (
+ "fmt"
+ "os"
+ "regexp"
+)
+
+func main() {
+ // Input Markdown file
+ inputFile := "../CHANGELOG.md"
+
+ // GitHub project URL
+ githubURL := "https://github.com/StarRocks/starrocks-kubernetes-operator/pull"
+
+ // Read the input file
+ content, err := os.ReadFile(inputFile)
+ if err != nil {
+ panic(err)
+ }
+
+ // Create a regular expression to match (#number)
+ re := regexp.MustCompile(`\(#([0-9]+)\)`)
+
+ // Replace (#number) with [#number](githubURL/number)
+ newContent := re.ReplaceAllStringFunc(string(content), func(s string) string {
+ number := s[2 : len(s)-1] // Extract the number
+ return fmt.Sprintf("[#%s](%s/%s)", number, githubURL, number)
+ })
+
+ // Write the new content back to the input file
+ var perm os.FileMode = 0600
+ err = os.WriteFile(inputFile, []byte(newContent), perm)
+ if err != nil {
+ panic(err)
+ }
+}