You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org

Helm

From Wikitech-static
Revision as of 17:06, 11 May 2020 by imported>JMeybohm (Add a debian/changelog entry (as CR))
Jump to navigation Jump to search

Helm is the package manager for Kubernetes.

It is used to build Helm charts, which are packages of Kubernetes resources that are used to deploy apps to a cluster.

Packaging

We're providing separate packages for helm 2 and helm 3, both may be installed at the same time.

Importing a new version

Both packages are build using Git-buildpackage. The imported upstream tarballs should include the complete vendor directory.

  • Check out the version (git tag) to import
$ ./debian/repack vX.Y.Z
  • This drops you into a shell with the git tag checked out. Do necessary changes here and commit
$ glide install --strip-vendor
# or
$ go mod vendor
$ git add -f vendor
# git diff --name-status --cached | grep -v 'vendor/' to make sure you only changed vendor
$ git commit -m "added vendor"
  • Exiting the shell will build a tarball to import
$ gbp import-orig /path/to/tarball.tar.xz
  • Push changes (including the tag crated by gpb) to gerrit
$ git push gerrit --all
$ git push gerrit --tags
  • Add a debian/changelog entry (as CR)
$ gbp dch
# Edit debian/changelog
$ git commit
$ git review

Building a new version

  • Check out the git repo on the build host
  • Build the package
$ gbp buildpackage --git-pbuilder --git-no-pbuilder-autoconf --git-dist=buster -sa -uc -us

For helm3 you need to build with debian backports enabled (BACKPORTS=yes gbp ...).

Resources