Existing CloudBees CI installations to Helm migration guide

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. 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 for Modern Platform Install.
# Install an nginx-ingress controller
nginx-ingress:
  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
      Host: 'cloudbees-core.example.com' <2>

# 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.