Skip to content

feat: add clickhouse-cluster helm chart#183

Merged
GrigoryPervakov merged 1 commit into
mainfrom
cluster-chart
May 11, 2026
Merged

feat: add clickhouse-cluster helm chart#183
GrigoryPervakov merged 1 commit into
mainfrom
cluster-chart

Conversation

@GrigoryPervakov
Copy link
Copy Markdown
Member

Why

For the projects with Helm-based deployment, it's convenient to use a Helm chart to deploy a CRs to create a cluster

What

Introduced a new Helm chart for keeper+clickhouse deployment.
values.yaml are generated from the CRD to represent the chart structure

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new “clickhouse-cluster-helm” Helm chart intended to deploy a ClickHouseCluster + KeeperCluster CR pair (with generated values.yaml derived from CRD schemas), alongside CI/release automation updates and an e2e deployment test that installs the new chart.

Changes:

  • Introduce a new cluster Helm chart under dist/chart-cluster/ that renders ClickHouseCluster and KeeperCluster CRs.
  • Add a Go-based generator (tools/gen-cluster-chart) to produce the cluster chart’s values.yaml from CRD schemas and wire it into make + CI.
  • Extend helm-based deployment tests to install and validate the new cluster chart.

Reviewed changes

Copilot reviewed 7 out of 14 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tools/gen-cluster-chart/templates/values.yaml.tmpl Template used by the generator to render values.yaml field blocks from CRD-derived schema data.
tools/gen-cluster-chart/main.go New generator binary that reads CRDs and renders the chart values.yaml.
test/deploy/deploy_test.go Adds a helm-install-based validation path for the new cluster chart.
README.md Documents installing a sample cluster via the new clickhouse-cluster-helm chart.
Makefile Adds targets to build/run the generator and package/push/lint the new cluster chart.
dist/chart-cluster/values.yaml Generated default values for the new cluster chart.
dist/chart-cluster/templates/NOTES.txt Post-install notes for the cluster chart.
dist/chart-cluster/templates/keeper-cluster.yaml Template for rendering a KeeperCluster CR from values.
dist/chart-cluster/templates/clickhouse-cluster.yaml Template for rendering a ClickHouseCluster CR (including optional keeperClusterRef wiring).
dist/chart-cluster/templates/_helpers.tpl Naming helpers for the cluster chart.
dist/chart-cluster/Chart.yaml New chart metadata for clickhouse-cluster-helm.
dist/chart-cluster/.helmignore Ignore rules for packaging the new chart.
.github/workflows/release.yaml Packages and publishes the cluster chart artifact and OCI push during releases.
.github/workflows/ci.yaml Ensures cluster chart generation is checked and cluster chart linting runs in CI.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread test/deploy/deploy_test.go
Comment thread Makefile
@GrigoryPervakov GrigoryPervakov marked this pull request as ready for review May 11, 2026 16:52
@GrigoryPervakov GrigoryPervakov enabled auto-merge (squash) May 11, 2026 16:52
@GrigoryPervakov GrigoryPervakov merged commit fd52ed2 into main May 11, 2026
18 checks passed
@GrigoryPervakov GrigoryPervakov deleted the cluster-chart branch May 11, 2026 16:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants