apache / kyuubi

Apache Kyuubi is a distributed and multi-tenant gateway to provide serverless SQL on data warehouses and lakehouses.
https://kyuubi.apache.org/
Apache License 2.0
2.09k stars 911 forks source link

[Improvement] Consider publishing the Helm chart to a chart repository #6057

Open chgl opened 8 months ago

chgl commented 8 months ago

Code of Conduct

Search before asking

What would you like to be improved?

Currently, deploying via the Helm chart requires downloading the repository and installing from the local directory. Having the chart released to a repository would simplify installation significantly and make it easier to keep the chart up-to-date as a user.

How should we improve?

There is https://github.com/helm/chart-releaser which uses github pages and should be relatively straight-forward to implement. As of recently, it's also possible to publish Helm charts as OCI artifacts https://helm.sh/docs/topics/registries/. This would allow hosting the chart on ghcr.io or Docker Hub (https://docs.docker.com/docker-hub/oci-artifacts/#push-a-helm-chart).

In my personal helm chart repo, I've been releasing charts using both methods for quite some time: https://github.com/chgl/charts/blob/master/.github/workflows/release.yaml. I'd be happy to contribute a workflow if it makes sense. Things still to figure out:

  1. How should the chart be versioned? - using the above mentioned methods, we could release a new version of the helm chart independent of the main kyuubi release. Everytime the chart is changed, the Chart.yaml version needs to be updated within the PR.
  2. Should we add release notes for the chart itself? - The released charts can be synced to ArtifactHub which provides a nice UI for viewing releases and release notes from annotations: https://artifacthub.io/docs/topics/annotations/helm/

Are you willing to submit PR?

github-actions[bot] commented 8 months ago

Hello @chgl, Thanks for finding the time to report the issue! We really appreciate the community's efforts to improve Apache Kyuubi.

sudohainguyen commented 8 months ago

💯 agree and following

yaooqinn commented 8 months ago

cc @pan3793 @dnskr @zwangsheng

pan3793 commented 8 months ago

I understand that we should do this, but there is a bit tricky issue blocking us to move forward.

TL;DR - how should the user provide Hadoop ecosystem configurations? Embedding large-XML content into YAML is not a good idea in my experience. You can find detailed background from my previous comments, any suggestions are welcome.

chgl commented 8 months ago

Good points, I've left some comments! Publishing the chart in a repository doesn't prevent someone from still downloading and using the chart locally, though.

dnskr commented 7 months ago

I understand that we should do this, but there is a bit tricky issue blocking us to move forward.

TL;DR - how should the user provide Hadoop ecosystem configurations? Embedding large-XML content into YAML is not a good idea in my experience. You can find detailed background from my previous comments, any suggestions are welcome.

I'm working on [Improvement] Define general Helm chart configuration approach issue to initiate the discussion and address the problem. I'll create it in a 2-3 days.

dnskr commented 7 months ago

FYI @chgl I created the issue https://github.com/apache/kyuubi/issues/6123.