Helm plugin
The Digital.ai Deploy Helm plugin can deploy and undeploy Helm charts on a Kubernetes host.
The Digital.ai Deploy Helm plugin supports:
- Deploy & upgrade helm.Chart V2 & V3 To use the plugin:
- Download the Deploy Helm plugin ZIP from the distribution site.
- Unpack the plugin inside the
XL_DEPLOY_SERVER_HOME/plugins/
directory. - Restart Deploy.
This plugin enables the use of Helm client host types and tasks that are specific to installing and deleting Helm charts, in Deploy.
Setting up the Deploy Helm plugin:
- In the infrastructure create an Overthere host(Linux and Unix hosts) which Helm binary installed(helm binary uses kubectl and its config).
- After successful connection to the host, hover on host Infrastructure and click the ,
- Click new and select
helm.Client
. - Create a Helm Client with the required properties.
- In Helm Client, provide value in "Helm Host" only when using helm v2. For helm v3, keep it blank.
- The Helm client also needs a reference in the Kubernetes master(k8s.Master) in order to manage Helm charts deployments on Kubernetes cluster.
- If the Kubernetes Master already exists in the Infrastructure list, then just point the helmClient property of k8s.Master to the helm Client created in point 4. If Kubernetes master is not already there in Infrastructure list then create a new
k8s.Master
as deploy Kubernetes plugin and set the Helm client property to point at helm client.
For more information, Refer Using Deploy Helm Plugin section.
Using Deploy Helm plugin:
Infrastructure Set-up for Helm (Helm-client):
To Setup the Kubernetes master in infrastructure refer to Kubernetes Master
Create the Helm Client
To Create the Helm Client in Infrastructure CI
- In the side navigation bar, Click Explorer.
- Expand the Infrastructure Cl list.
- Navigate to a CI of Helm Client type, click , and select New > Overthere > LocalHost.
- Specify the Name region as LocalHost.
- In the Operating system field, select UNIX from the drop-down List.
if required we can provide username and Password in Authentication section.
- Click Save or Save and close.
Create the Helm Client using helm.client
- In the side navigation bar, click Explorer.
- Expand the Infrastructure, hover over newly created infrastructure and click, and select New > helm > client.
- In the Name field enter the name of the configuration item.
- In the Home field enter the path where the Helm client is installed.
- Under the Advanced section, select the version from the drop down list in the version field.
Verify the connectivity of Helm Client
- Expand the Infrasturcture list.
- Hover over newly Created Infrastructure and click , and Select Check Connection.
Once connection is Successful, provide path for Helm-Client in the configuration of created K8-Master-infra.You can find it in Helm section of configuration.
- Click Save and close
Environment setup for Deployment:
To create an new environment, follow the steps,
- In the side navigation bar, click Explorer.
- Hover over Environments, click , then select New > Environment.
- In the Name field, enter the name of the Configuration item.
- Under Common section, Select the Containers field from the drop-down list. The selected container path should be the namespace of Kubernetes on which we are deploying.
You can install Helm charts with auto-created Namespace.
- We can also select dictionary from drop down section. Before selecting dictionary, user must be created dictionary in Environments.
Create an dictionary
To create an dictionary:
- In the top bar, click Explorer.
- Hover over Environments, click , and select New >dictionary.
Application Creation for Helm
Chart and repository Deployment
- To Create a new Application, click , and select New > Application.
- Specify the Name for application.
- Expand the Application list.
- Hover over newly created application and click: and select New > Deployment Package.
- Specify the Name for the Deployment Package.
- Hover over newly created Package and click: and select New > Helm > Chart.
- In the Name field, enter the name of the configuration item.
- Under the Common section:
- In the Chart Name field ,enter the chart name.
- In the Chart Version field . enter the chart version.
- Under the Repository section, enter the URL for the helm repository in Repository URL field.
If Repository is already present then, no need to give repository URL.
- Click Save and close.
To update values.yaml using ConfigFile specification,
- A YAML file which overrides the
Values.yaml
of a Helm chart, is supported ashelm.ConfigFile
type. To specify a Config file which overrides the values inValues.yaml
. - To create a
helm.ConfigFile
underHelm.Chart
. Hover Over newly created chart application, Click : and select helm > ConfigFile. - In the Name field, enter the name of the configuration item.
- In the Choose file field, select the
.yml file of ConfigMap
from the Browser. - Click Save and close.
- The custom values for
Values.yaml
can also be specified in Input Variables and Secret Input Variables.
Deploy the Package
To deploy the package, select the environment on which you want to deploy.
- Click Continue and Deploy
- Use “helm ls -n helm-demo” command on terminal to check the deployment. Where helm-demo is name of namespace on which we are deploying,
Deploying two helm charts in parallel with Deploy:
- Users can deploy Helm charts in parallel with Deploy. The Deploy Helm plugin supports all the core features of deployments provided by Deploy.