Skip to content

Migrate `k8s-workloads/common` to `gitlab-helmfiles` repo and convert to helmfile

Currently the repo at https://gitlab.com/gitlab-com/gl-infra/k8s-workloads/common/ serves a number of functions, but part of that is deploy some kubernetes manifests that handles

  • Creating three different storage classes on our clusters in addition to the original default one provided by Google
  • Creating some service accounts and granting them permissions for the purpose of Gitlab CI Jobs

We want to migrate these manifests to be managed by helmfile in the gitlab-helmfiles repo.

To this end we will need to

  • Create a helmfile called gitlab-storage to manage the storage classes we want to add to all clusters
  • Create a helmfile called gitlab-ci-accounts to manage the kubernetes side of setting up the permissions around the service accounts for CI
  • Figure out a migration path for helm to "adopt" the existing resources so that we can do a helmfile apply without it complaining about existing resources (we can't delete and recreate the storage classes as that will mess up the existing pvcs)
  • Decommission the storage and ci account parts of k8s-workloads/common only
Edited by Graeme Gillies