- What is a Helm chart?
-
A Helm chart is a package that defines a Kubernetes application and its dependencies.
The chart is a combination of YAML templates for Kubernetes resources, such as pods, replica sets, deployments or ingresses. It also provides a values
file that populates default configuration values for the templates.
Instead of manually editing files, Helm manages the process by merging the templates
files and the values
into a custom YAML file. It then applies and tracks the deployment of the YAML file on the Kubernetes cluster.
Using the Internet to download the Helm chart and the chart dependencies is the preferred method, but you can install a chart from a local archive that has been downloaded beforehand.
- Do I have to use Tiller to install CloudBees CI?
-
No. Tiller is a server-side component that was required for Helm 2. The required version is Helm 3, which is a client-only solution without a requirement for a server-side component.
- Which version of Helm is supported?
-
Helm 3 is the only supported version.
- What happened to Helm 2 support?
-
Helm 2 is no longer supported by Helm’s maintainer. See Helm 2 and the Charts Project Are Now Unsupported
- How can I install a previous version on CloudBees CI with Helm?
-
The CloudBees CI Helm chart started with CloudBees CI 2.164.1.2, which provided Kubernetes support. CloudBees CI Helm chart support for OpenShift started with CloudBees CI 2.176.3.2.
The CloudBees Helm chart museum has a Helm chart starting with CloudBees CI 2.164.1.2. By default, the command
helm search cloudbees cloudbees-core
returns the most recent chart from all the CloudBees Helm chart repositories.You can omit the CloudBees repository name and Helm will search all of your Helm repositories. The list option
helm search cloudbees-core -l
displays all the chart versions in all of your repositories.helm search -l example$ helm search repo cloudbees/cloudbees-core -l NAME CHART VERSION APP VERSION DESCRIPTION cloudbees/cloudbees-core 3.9.0+c3d55aeaee57 2.204.2.2 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 3.8.0+a0d07461ae1c 2.204.1.3 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 3.7.0+ffcae9c08fc6 2.190.3.2 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 3.6.0+4d2e34de1e86 2.190.2.2 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 3.5.0 2.176.4.3 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 3.4.1 2.176.3.3 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 2.176.203 2.176.2.3 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 2.176.104 2.176.1.4 The Continuous Delivery Solution for Enterprises cloudbees/cloudbees-core 2.164.302 2.164.3.2 The Continuous Delivery Solution for Enterprises
You can install any version of a chart by using use the
--version
argument, where the version number is the chart version. Again, this is the Helm chart version number, not the CloudBees CI version number. - Why don’t I see the latest version of the Helm chart when I use
helm search
? -
helm search
searches a local cache of all your installation repositories. Update your cache by usinghelm repo update
. - Why doesn’t the Helm chart version match the CloudBees CI version?
-
The CloudBees Helm chart follows the Helm community’s best practices of using a SemVer2 version number. Having a different Helm chart version allows CloudBees to make updates to the Helm chart between CloudBees CI releases.
For more Information, see Semantic Versioning - Why don’t I see the new CloudBees CI chart when I do a
helm search cloudbees-core
or when I usedhelm update
to update CloudBees CI? -
Helm doesn’t automatically update your local Helm repository cache. You should alway update your local cache in your local Helm repository before you install, update, or search.
You need to update your local cache by running the command
helm repo update
. - How do I add the CloudBees Helm chart museum to my Helm environment?
-
The command
helm repo add https://public-charts.artifacts.cloudbees.com/repository/public/
adds the CloudBees Public Helm chart museum to your list of repositories.You can view all of your Helm chart repositories with the command
helm repo list
. - How do I know what the Helm install command or update command will do to my environment?
-
Add
--dry-run --debug
to the Helm command to display the YAML that Helm intends to apply to your cluster. For example, if you want to see the YAML that will be applied during an update you can usehelm upgrade cloudbees-core cloudbees/cloudbees-core --dry-run --debug
This will only show you the YAML that will be applied. It doesn’t provide you with the differences between what is running and what will be applied. If you want to see the changes that are being applied by the command, read the documentation for Using the Helm Diff plugin.
- My environment was corrupted by my last Helm update. What can I do?
-
You can use the
helm rollback
command to roll back to a previous revision within a release.See Common Helm commands for more information on using the helm rollback
command. - Do I have to use cloudbees-core as the release name?
-
No, the release name can be anything you wish to use. It just has to be the only one in the cluster.
- Why does the Helm chart version differ from the CloudBees CI?
-
Starting with CloudBees CI on modern cloud platforms 2.176.3.2, a Helm chart has been built for each release and published in the CloudBees Public Helm chart museum,
public-charts.artifacts.cloudbees.com/repository/public
.In CloudBees CI on modern cloud platforms 2.176.3.2, the Helm chart includes OpenShift support. Also, the chart is published on the CloudBees public download site and the CloudBees Public Helm chart museum.
CloudBees attempted to use the CloudBees CI Release Number for the Helm chart version, but this was confusing. Starting with 2.176.3.2, the Helm chart has a chart version that is independent of the CloudBees CI release.
The chart version starts with 3.4.0; This eliminated the need for repackaging and deploying new charts for the previous releases. It also allowed the early adopters to use the standard helm upgrade process to upgrade their installation of CloudBees CI on modern cloud platforms.
- What version of CloudBees CI added support for Helm?
-
Table 1. Helm charts and supported environments CloudBees CI version Helm chart version Supports Kubernetes Supports OpenShift 2.164.1.2
2.164.1.2
Yes
No
2.176.1.4
2.176.104
Yes
No
2.176.2.3
2.176.203
Yes
No
2.164.3.2
2.164.302
Yes
No
2.176.3.2 and higher
3.4.0 and higher
Yes
Yes
- Why did the CloudBees CI YAML file order change?
-
Starting with CloudBees CI on modern cloud platforms 2.176.3.2, CloudBees CI Helm chart 3.4.0, the installation YAML is created using the
helm template
. - How can I retrieve the
values.yaml
file used for my current installation? -
helm get values RELEASE_NAME
gives you the current values for the specified release. For example,helm get values cloudbees-core
, assuming you already have an installed release named cloudbees-core in the current namespace.
helm show values CHART
gives you the default values for a given chart. For example, helm show values cloudbees/cloudbees-core
.
- What is the difference between
helm repo update
andhelm upgrade
? -
helm repo update
retrieves the latest metadata from remote repositories.
helm upgrade
upgrades to the latest version available for the given chart.
- What are some best practices for using Helm?
-
Store chart coordinates (name and version) and input
values.yaml
under version control, and always use them when applying a change to the product. - Can I use Helm in an air-gapped environment?
-
When working in an air-gapped environment, the following method can be applied to download and install the Helm chart:
-
Use
helm fetch
to download a Helm chart from the chart repository. -
Copy the Helm chart archive over to the air-gapped environment.
-
Use
helm install [NAME] [CHART] [flags]
where[CHART]
refers to the Helm chart archive to install the Helm chart in the air-gapped Kubernetes cluster.
-