Add helm package release process
What does this MR do and why?
This MR updates the deployment pipelines to package the helm charts up and provide a helm package for users to include in their own helm charts as a versioned dependency.
Images of it working
Note: The release and package have been deleted as they were only created for testing purposes.
Scenario | Image |
---|---|
Release | |
Package listing | |
Package page | |
Package YAML | |
Package in a project |
Shell output from usage
Adding the package to a Chart.yaml
:
- name: gitlab-product-analytics
repository: https://gitlab.com/api/v4/projects/55613855/packages/helm/stable
version: 1.29.7
Adding the package:
❯ helm repo add gitlab-product-analytics https://gitlab.com/api/v4/projects/55613855/packages/helm/stable
"gitlab-product-analytics" has been added to your repositories
❯ helm dependencies update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "gitlab-product-analytics" chart repository
...Successfully got an update from the "gl-infra-charts" chart repository
...Successfully got an update from the "vector" chart repository
...Successfully got an update from the "jetstack" chart repository
...Successfully got an update from the "bitnami" chart repository
...Successfully got an update from the "promtail" chart repository
...Successfully got an update from the "prometheus-community" chart repository
Update Complete. ⎈Happy Helming!⎈
Saving 9 charts
Dependency certificates did not declare a repository. Assuming it exists in the charts directory
Dependency clickhouse did not declare a repository. Assuming it exists in the charts directory
Dependency cube did not declare a repository. Assuming it exists in the charts directory
Dependency snowplow did not declare a repository. Assuming it exists in the charts directory
Downloading kafka from repo https://charts.bitnami.com/bitnami
Downloading vector from repo https://helm.vector.dev
Downloading prometheus from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-statsd-exporter from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-stackdriver-exporter from repo https://prometheus-community.github.io/helm-charts
Deleting outdated charts
❯ helm repo add gitlab-product-analytics https://gitlab.com/api/v4/projects/55613855/packages/helm/stable
"gitlab-product-analytics" has been added to your repositories
❯ helm dependency update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "vector" chart repository
...Successfully got an update from the "gl-infra-charts" chart repository
...Successfully got an update from the "gitlab-product-analytics" chart repository
...Successfully got an update from the "jetstack" chart repository
...Successfully got an update from the "promtail" chart repository
...Successfully got an update from the "bitnami" chart repository
...Successfully got an update from the "prometheus-community" chart repository
Update Complete. ⎈Happy Helming!⎈
Saving 10 charts
Dependency certificates did not declare a repository. Assuming it exists in the charts directory
Dependency clickhouse did not declare a repository. Assuming it exists in the charts directory
Dependency cube did not declare a repository. Assuming it exists in the charts directory
Dependency snowplow did not declare a repository. Assuming it exists in the charts directory
Downloading kafka from repo https://charts.bitnami.com/bitnami
Downloading vector from repo https://helm.vector.dev
Downloading prometheus from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-statsd-exporter from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-stackdriver-exporter from repo https://prometheus-community.github.io/helm-charts
Downloading gitlab-product-analytics from repo https://gitlab.com/api/v4/projects/55613855/packages/helm/stable
Deleting outdated charts
❯ helm dependency build
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "vector" chart repository
...Successfully got an update from the "gl-infra-charts" chart repository
...Successfully got an update from the "gitlab-product-analytics" chart repository
...Successfully got an update from the "jetstack" chart repository
...Successfully got an update from the "promtail" chart repository
...Successfully got an update from the "bitnami" chart repository
...Successfully got an update from the "prometheus-community" chart repository
Update Complete. ⎈Happy Helming!⎈
Saving 10 charts
Dependency certificates did not declare a repository. Assuming it exists in the charts directory
Dependency clickhouse did not declare a repository. Assuming it exists in the charts directory
Dependency cube did not declare a repository. Assuming it exists in the charts directory
Dependency snowplow did not declare a repository. Assuming it exists in the charts directory
Downloading kafka from repo https://charts.bitnami.com/bitnami
Downloading vector from repo https://helm.vector.dev
Downloading prometheus from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-statsd-exporter from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-stackdriver-exporter from repo https://prometheus-community.github.io/helm-charts
Downloading gitlab-product-analytics from repo https://gitlab.com/api/v4/projects/55613855/packages/helm/stable
Deleting outdated charts
Removing the package:
❯ helm repo remove gitlab-product-analytics
"gitlab-product-analytics" has been removed from your repositories
❯ helm dependency update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "jetstack" chart repository
...Successfully got an update from the "vector" chart repository
...Successfully got an update from the "gl-infra-charts" chart repository
...Successfully got an update from the "prometheus-community" chart repository
...Successfully got an update from the "bitnami" chart repository
...Successfully got an update from the "promtail" chart repository
Update Complete. ⎈Happy Helming!⎈
Saving 9 charts
Dependency certificates did not declare a repository. Assuming it exists in the charts directory
Dependency clickhouse did not declare a repository. Assuming it exists in the charts directory
Dependency cube did not declare a repository. Assuming it exists in the charts directory
Dependency snowplow did not declare a repository. Assuming it exists in the charts directory
Downloading kafka from repo https://charts.bitnami.com/bitnami
Downloading vector from repo https://helm.vector.dev
Downloading prometheus from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-statsd-exporter from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-stackdriver-exporter from repo https://prometheus-community.github.io/helm-charts
Deleting outdated charts
❯ helm dependency build
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "jetstack" chart repository
...Successfully got an update from the "vector" chart repository
...Successfully got an update from the "gl-infra-charts" chart repository
...Successfully got an update from the "bitnami" chart repository
...Successfully got an update from the "promtail" chart repository
...Successfully got an update from the "prometheus-community" chart repository
Update Complete. ⎈Happy Helming!⎈
Saving 9 charts
Dependency certificates did not declare a repository. Assuming it exists in the charts directory
Dependency clickhouse did not declare a repository. Assuming it exists in the charts directory
Dependency cube did not declare a repository. Assuming it exists in the charts directory
Dependency snowplow did not declare a repository. Assuming it exists in the charts directory
Downloading kafka from repo https://charts.bitnami.com/bitnami
Downloading vector from repo https://helm.vector.dev
Downloading prometheus from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-statsd-exporter from repo https://prometheus-community.github.io/helm-charts
Downloading prometheus-stackdriver-exporter from repo https://prometheus-community.github.io/helm-charts
Deleting outdated charts
MR acceptance checklist
-
The correct type labels have been applied to this MR. -
This MR has been made as small as possible, to improve review efficiency and code quality. -
This MR has been self-reviewed per the code review guidelines. -
The changes have undergone manual testing and are functioning as intended. -
This MR has updated the Chart.yaml
version number following SemVer versioning practices. -
This MR documents any breaking changes in the MR description, and the upgrade path has been documented in the first commit as well as in MR description.
Related to https://gitlab.com/gitlab-org/analytics-section/product-analytics/analytics-stack/-/issues/141
Edited by Robert Hunt