Existing CloudBees CI installations to Helm migration guide

2 minute read

You can use the CloudBees CI Helm chart to migrate an existing CloudBees CI installation to Helm.

Why migrate?

Installations of CloudBees CI performed without Helm used a YAML file, and administrators had to directly modify the cloudbees-core.yaml file to update or modify the CloudBees CI configuration.

Switching to Helm to manage CloudBees CI gives administrators the ability to "offload" administration of CloudBees CI to Helm and automate the upgrade process.

Additionally, Helm 3 is a pure client-side solution (unlike Helm 2, which required a server-side component with full admin access), so there are no limitations to using it instead of the older YAML manifests.

Before you migrate

  1. As all migrations carry a risk of data loss, CloudBees strongly recommends backing up your operations center and JENKINS_HOME prior to migrating. For more information, see the Backup and restore guide.

  2. Add the CloudBees Helm chart repository to your Helm environment. For more information, see How to install CloudBees CI on modern platforms using Helm

  3. If you wish to use a custom values file to set options, set that file up prior to starting the migration.

Example migration custom values file

The following custom values file is based on the migration-values-example.yaml file from the CloudBees Public GitHub repository.

# A helm example values file for migrating a CloudBees CI on modern cloud platforms installation. # Install an ingress-nginx controller ingress-nginx: Enabled: false (1) OperationsCenter: # Set the HostName for the Operation Center HostName: 'cloudbees-core.example.com' (2) Ingress: tls: ## Set this to true in order to enable TLS on the ingress record Enable: false (3) SecretName: core-example-com-tls # If you are migrating from an existing manual installation of CloudBees CI, provide the PVC that was created # during the initial installation Persistence: ExistingClaim: 'jenkins-home-cjoc-0' (4)
1 If you want NGINX Ingress Controller installed, change this value to true.
2 Replace cloudbees-core.example.com domain name with your domain name.
3 If you want to enable TLS, set this value to true.
4 jenkins-home-cjoc-0 is the PVC that is created using the CloudBees CI, so keep this value.