Jaeger: Move Helm chart to new jaegertracing/helm-charts

Created on 13 Dec 2019  Β·  13Comments  Β·  Source: jaegertracing/jaeger

Requirement - what kind of business use case are you trying to solve?

Keeping Jaeger Helm charts accessible for end users, and also improving maintainability of the chart(s) moving forward.

Problem - what in Jaeger blocks you from solving the requirement?

The stable and incubator Helm chart repositories, currently listed on the Helm Hub, have begun a 1 year deprecation timeline. After 6 months they will be de-listed from the Hub. See helm/charts > Status of the Project and Deprecation Timeline.

The impact for end users is in 6 months the incubator/jaeger and stable/jaeger-operator will no longer be listed on the Helm Hub, as they are now: https://hub.helm.sh/charts?q=jaeger. Additionally, since Helm 3 was released, new versions of helm do not even include the stable repo by default. This means after 6 months, if the Jaeger charts are not moved to a new home and listed on the Hub, new users will not have a direct way to discover or install them.

Proposal - what do you suggest to solve the problem or improve the existing situation?

Move Jaeger Helm charts to prepare for stable and incubator charts repo deprecation timeline.

  1. Create a jaegertracing Helm charts gitpub project,Β such as https://github.com/jaegertracing/helm-charts, to be used as a Helm repository for Jaeger-related charts.
  2. Move incubator/jaeger and stable/jaeger-operator from https://github.com/helm/charts to a new GitHub project. Note that retaining git history from the beginning is much easier than trying to splice it in later (see https://github.com/goharbor/harbor-helm/issues/48)
  3. Include disclaimer README similar to https://github.com/elastic/helm-charts#elastic-stack-kubernetes-helm-chart. Also note these charts are community maintained, and add a basic statement about how to get involved (because it will be your own GitHub repo, you no longer need to rely on the helm/charts OWNERS file, but can add collaborators directly to the repo, if per-chart access is desired use GitHub native CODEOWNERS, etc). This all helps keep the burden low for the Jaeger team, and and shows support for Jaeger Helm Charts without adding additional liability
  4. Add automation for chart linting, testing, and releasing chart versions to the Helm Repository using GitHub pages
  5. Add new Jaeger Charts repository to the Helm Hub. See https://github.com/helm/hub#how-to-add-your-helm-charts
  6. Deprecate the incubator/jaeger and stable/jaeger-operator charts in helm/charts. See https://github.com/helm/charts/blob/master/PROCESSES.md#deprecating-a-chart

See today's Jaeger Project Bi-Weekly Call Meeting Notes: 2019-12-13 for more context. I was asked by @naseemkullah to join the meeting and help give some context for this proposal. @jpkrohling asked for this issue to be created.

Any open questions to address

  • Would it be useful to have assistance with items 2, 4, 5 and 6 above? If so I'm happy to help
  • Are you interested in trying out the new Helm GitHub actions for item 4 above? These are very new, but do work - and are easier to set up than other previous methods (see https://github.com/helm/charts-repo-actions-demo). Again I'm happy to assist with this
  • Would you want to invite the current maintainers of these charts to the new GitHub repo, per item 3 above? Currently listed owners:

    • stable/jaeger-operator OWNERS: @cpanato @batazor

    • incubator/jaeger OWNERS: @dvonthenen @mikelorant @naseemkullah @pavelnikolov

Most helpful comment

@scottrigby repository created https://github.com/jaegertracing/helm-charts. I made you an admin for now, created a team @jaegertracing/helm-charts-maintainers , and invited the people you mentioned to this team. Please do the remaining setup, ping here if you need other setup functions.

All 13 comments

I support this change πŸ‘

@scottrigby repository created https://github.com/jaegertracing/helm-charts. I made you an admin for now, created a team @jaegertracing/helm-charts-maintainers , and invited the people you mentioned to this team. Please do the remaining setup, ping here if you need other setup functions.

@yurishkuro I have pushed the changes I can to a branch on that repo, and am just blocked (on actions administration, github token/user creation, and master branch protection) due to the admin role not being a full admin of that repo. I added more details in Jaeger Gitter - please let me know there which of the options you prefer. Will update status here once we have it up and running πŸ˜„

@scottrigby you're listed as admin, but that you have not accepted the invitation. Please visit the following link if you did not get an email: https://github.com/jaegertracing/helm-charts/invitations

OK, the repo itself should be all set up βœ…

Master branch is pushed. The Helm repo automated releaser is working. Someone may want to test this.

I have also opened two PRs (just README updates), after the existing versions of the Jaeger charts from github.com/helm/charts (untouched) had been added to the new jaegertracing/helm-charts chart repo. These are actually necessary PRs (pointing readmes to the new jaegertracing charts repo), but I did this after CI was all set up so you can additionally see the CI working on them.

I also added more branch protection rules for master:

  • Required DCO status check
  • Required lint-test status check
  • Required signed commits

Is there some additional setup missing? I did this per README, but nothing useful was shown:

$ helm repo add jaegertracing https://jaegertracing.github.io/helm-charts
"jaegertracing" has been added to your repositories

$ helm search jaegertracing

If using helm 3, try helm search repo jaegertracing

% helm version
version.BuildInfo{Version:"v3.0.0 [...]

% helm search repo jaegertracing
NAME                            CHART VERSION   APP VERSION DESCRIPTION
jaegertracing/jaeger            0.17.3          1.15.1      A Jaeger Helm chart for Kubernetes
jaegertracing/jaeger-operator   2.12.1          1.15.1      jaeger-operator Helm chart for Kubernetes

Thanks. I fixed the README.

@scottrigby How should we handle PRs currently open in the original repos?

I'd tell the authors to send them to this repo.

yep, I'm waiting for the deprecation get merged then i will go for all PRs in helm for jaeger* and point to here

OK also please hang tight – the CI needs to be fixed. I mentioned in the call you'll be an early adopter of the new Helm GH actions πŸ˜„ I see now we had not fully sorted out the actions for charts with dependencies - working with @unguiculus on fixing those now. Can we please hold off on merging PRs in that new charts repo for just a short time while this gets fixed?

OK I believe we are up and running. Thanks for patience!

Was this page helpful?
0 / 5 - 0 ratings