This is an automated email from the ASF dual-hosted git repository.
AdheipSingh pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/druid-operator.git
The following commit(s) were added to refs/heads/gh-pages by this push:
new d2ce816 helm chart publishing to gh-pages (#19)
d2ce816 is described below
commit d2ce816968f67b6c03738d9c3881312ce0df9c97
Author: Razin Bouzar <[email protected]>
AuthorDate: Tue May 12 08:31:44 2026 -0700
helm chart publishing to gh-pages (#19)
Publishing to gh-pages
---
.asf.yaml | 2 +
.github/workflows/helm-chart.yml | 106 ++++++++++++++++++++++++++++++++++++++
docs/getting_started.md | 14 ++---
tutorials/druid-on-kind/README.md | 4 +-
4 files changed, 117 insertions(+), 9 deletions(-)
diff --git a/.asf.yaml b/.asf.yaml
index 4846737..f9c9507 100644
--- a/.asf.yaml
+++ b/.asf.yaml
@@ -3,6 +3,8 @@
github:
description: 'Apache Druid Operator: a Kubernetes operator for Apache Druid.'
homepage: https://druid.apache.org/
+ ghp_branch: gh-pages
+ ghp_path: /
# Attempt to make the auto-generated github emails more easily readable in
email clients.
# Configuration adapted from
https://github.com/apache/plc4x/blob/develop/.asf.yaml.
diff --git a/.github/workflows/helm-chart.yml b/.github/workflows/helm-chart.yml
new file mode 100644
index 0000000..99b8305
--- /dev/null
+++ b/.github/workflows/helm-chart.yml
@@ -0,0 +1,106 @@
+#
+# 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
+
+on:
+ push:
+ branches: [ master ]
+ paths:
+ - chart/**
+ - .github/workflows/helm-chart.yml
+ workflow_dispatch:
+
+permissions:
+ contents: write
+
+concurrency:
+ group: helm-chart-${{ github.ref }}
+ cancel-in-progress: false
+
+env:
+ CHART_REPO_URL: https://apache.github.io/druid-operator
+ CHART_RELEASE_DIR: helm-releases
+
+jobs:
+ publish:
+ if: github.repository == 'apache/druid-operator'
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout source
+ uses: actions/checkout@v4
+ with:
+ path: source
+
+ - name: Checkout gh-pages
+ uses: actions/checkout@v4
+ with:
+ ref: gh-pages
+ path: gh-pages
+
+ - name: Set up Helm
+ uses: azure/setup-helm@v4
+
+ - name: Package chart
+ run: |
+ mkdir -p source/.chart-packages
+ helm lint source/chart
+ helm package source/chart --destination source/.chart-packages
+
+ - name: Update Helm repository index
+ run: |
+ package_path="$(find source/.chart-packages -name '*.tgz' -print
-quit)"
+ package_name="$(basename "${package_path}")"
+ release_dir="gh-pages/${CHART_RELEASE_DIR}"
+
+ mkdir -p "${release_dir}"
+
+ if [[ -f "${release_dir}/${package_name}" ]] && \
+ [[ -f gh-pages/index.yaml ]] && \
+ grep -q "${CHART_RELEASE_DIR}/${package_name}"
gh-pages/index.yaml; then
+ echo "Chart package ${package_name} already exists on gh-pages."
+ exit 0
+ fi
+
+ if [[ ! -f "${release_dir}/${package_name}" ]]; then
+ cp "${package_path}" "${release_dir}/"
+ fi
+
+ if [[ -f gh-pages/index.yaml ]]; then
+ helm repo index gh-pages --url "${CHART_REPO_URL}" --merge
gh-pages/index.yaml
+ else
+ helm repo index gh-pages --url "${CHART_REPO_URL}"
+ fi
+
+ - name: Publish chart
+ run: |
+ chart_version="$(helm show chart source/chart | awk '/^version:/ {
print $2 }')"
+
+ cd gh-pages
+ git config user.name "github-actions[bot]"
+ git config user.email
"41898282+github-actions[bot]@users.noreply.github.com"
+ git add .
+
+ if git diff --cached --quiet; then
+ echo "No chart changes to publish."
+ exit 0
+ fi
+
+ git commit -m "Publish druid-operator chart ${chart_version}"
+ git push origin HEAD:gh-pages
diff --git a/docs/getting_started.md b/docs/getting_started.md
index d3ba300..354c782 100644
--- a/docs/getting_started.md
+++ b/docs/getting_started.md
@@ -18,7 +18,7 @@ under the License.
-->
# Installation
-The Helm chart is available at the [DataInfra chart
repository](https://charts.datainfra.io).
+The Helm chart is available at the [Apache Druid Operator chart
repository](https://apache.github.io/druid-operator).
The operator can be deployed in one of the following modes:
- namespace scope (default)
@@ -26,7 +26,7 @@ The operator can be deployed in one of the following modes:
### Add the Helm repository
```shell
-helm repo add datainfra https://charts.datainfra.io
+helm repo add apache-druid https://apache.github.io/druid-operator
helm repo update
```
@@ -34,23 +34,23 @@ helm repo update
`NOTE:` the default installation restrics the reconciliation on the default
and kube-system namespaces
```bash
# Install Druid operator using Helm
-helm -n druid-operator-system upgrade -i --create-namespace
cluster-druid-operator datainfra/druid-operator
+helm -n druid-operator-system upgrade -i --create-namespace
cluster-druid-operator apache-druid/druid-operator
# ... or generate manifest.yaml to install using other means:
-helm -n druid-operator-system template --create-namespace
cluster-druid-operator datainfra/druid-operator > manifest.yaml
+helm -n druid-operator-system template --create-namespace
cluster-druid-operator apache-druid/druid-operator > manifest.yaml
```
### Custom Namespaces Installation
```bash
# Install Druid operator using Helm
kubectl create ns mynamespace
-helm -n druid-operator-system upgrade -i --create-namespace --set
env.WATCH_NAMESPACE="mynamespace" namespaced-druid-operator
datainfra/druid-operator
+helm -n druid-operator-system upgrade -i --create-namespace --set
env.WATCH_NAMESPACE="mynamespace" namespaced-druid-operator
apache-druid/druid-operator
# Override the default namespace DENY_LIST
-helm -n druid-operator-system upgrade -i --create-namespace --set
env.DENY_LIST="kube-system" namespaced-druid-operator datainfra/druid-operator
+helm -n druid-operator-system upgrade -i --create-namespace --set
env.DENY_LIST="kube-system" namespaced-druid-operator
apache-druid/druid-operator
# ... or generate manifest.yaml to install using other means:
-helm -n druid-operator-system template --set env.WATCH_NAMESPACE=""
namespaced-druid-operator datainfra/druid-operator --create-namespace >
manifest.yaml
+helm -n druid-operator-system template --set env.WATCH_NAMESPACE=""
namespaced-druid-operator apache-druid/druid-operator --create-namespace >
manifest.yaml
```
### Uninstall
diff --git a/tutorials/druid-on-kind/README.md
b/tutorials/druid-on-kind/README.md
index c0ab3df..dc4c891 100644
--- a/tutorials/druid-on-kind/README.md
+++ b/tutorials/druid-on-kind/README.md
@@ -37,14 +37,14 @@ Create kind cluster on your machine.
- Add Helm Repo
```
-helm repo add datainfra https://charts.datainfra.io
+helm repo add apache-druid https://apache.github.io/druid-operator
helm repo update
```
- Install Operator
```
# Install Druid operator using Helm
-helm -n druid-operator-system upgrade -i --create-namespace
cluster-druid-operator datainfra/druid-operator
+helm -n druid-operator-system upgrade -i --create-namespace
cluster-druid-operator apache-druid/druid-operator
```
## Apply Druid Customer Resource
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]