This is an automated email from the ASF dual-hosted git repository.
chengwang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/fluss.git
The following commit(s) were added to refs/heads/main by this push:
new dd181eb24 [helm] Add CI workflow to run Helm tests (#2777)
dd181eb24 is described below
commit dd181eb24ac4e536a50e593992a1d467823a50b9
Author: Muhammet Orazov <[email protected]>
AuthorDate: Wed Mar 11 03:32:15 2026 +0100
[helm] Add CI workflow to run Helm tests (#2777)
* [helm] Add CI workflow to run Helm tests
---
.github/workflows/helm-chart.yaml | 54 ++++++++++++++++++++++++++++
helm/tests/imagepullsecrets_test.yaml | 67 +++++++++++++++++++++++++++++++++++
2 files changed, 121 insertions(+)
diff --git a/.github/workflows/helm-chart.yaml
b/.github/workflows/helm-chart.yaml
new file mode 100644
index 000000000..da529c530
--- /dev/null
+++ b/.github/workflows/helm-chart.yaml
@@ -0,0 +1,54 @@
+################################################################################
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+################################################################################
+
+name: "Helm Chart"
+
+permissions:
+ contents: read
+
+on:
+ pull_request:
+ paths:
+ - 'helm/**'
+ - '.github/workflows/helm-chart.yaml'
+ push:
+ branches: [main, release-*, ci-*]
+ paths:
+ - 'helm/**'
+ - '.github/workflows/helm-chart.yaml'
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event_name }}-${{
github.event.number || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ test-helm-chart:
+ name: "Helm Lint and Unittest"
+ runs-on: ubuntu-latest
+ steps:
+ - name: "Checkout code"
+ uses: actions/checkout@v6
+
+ - name: "Lint Helm chart"
+ run: helm lint ./helm
+
+ - name: "Run helm-unittest"
+ uses: d3adb5/helm-unittest-action@v2
+ with:
+ helm-version: latest
+ charts: helm
diff --git a/helm/tests/imagepullsecrets_test.yaml
b/helm/tests/imagepullsecrets_test.yaml
new file mode 100644
index 000000000..388142674
--- /dev/null
+++ b/helm/tests/imagepullsecrets_test.yaml
@@ -0,0 +1,67 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+suite: imagePullSecrets
+templates:
+ - templates/sts-coordinator.yaml
+ - templates/sts-tablet.yaml
+
+tests:
+ - it: should not set imagePullSecrets by default
+ asserts:
+ - isNull:
+ path: spec.template.spec.imagePullSecrets
+ template: templates/sts-coordinator.yaml
+ - isNull:
+ path: spec.template.spec.imagePullSecrets
+ template: templates/sts-tablet.yaml
+
+ - it: should set imagePullSecrets when a single secret is provided
+ set:
+ image.pullSecrets:
+ - my-registry-secret
+ asserts:
+ - equal:
+ path: spec.template.spec.imagePullSecrets
+ value:
+ - name: my-registry-secret
+ template: templates/sts-coordinator.yaml
+ - equal:
+ path: spec.template.spec.imagePullSecrets
+ value:
+ - name: my-registry-secret
+ template: templates/sts-tablet.yaml
+
+ - it: should set imagePullSecrets when multiple secrets are provided
+ set:
+ image.pullSecrets:
+ - secret-one
+ - secret-two
+ asserts:
+ - equal:
+ path: spec.template.spec.imagePullSecrets
+ value:
+ - name: secret-one
+ - name: secret-two
+ template: templates/sts-coordinator.yaml
+ - equal:
+ path: spec.template.spec.imagePullSecrets
+ value:
+ - name: secret-one
+ - name: secret-two
+ template: templates/sts-tablet.yaml