This quick start guide shows you how to deploy DevOps Plan Helm Chart.
Before you begin
Before you can deploy
DevOps Plan:
- You must have Kubernetes version 1.16.0 or higher, kubectl CLI, and Helm 3.
- You must have the Image and Helm Chart. The DevOps Plan images and Helm chart can be accessed at
the HCL Container Registry (hclcr.io) and Helm Repository or at HCL Harbor.
- You must obtain a Harbor CLI secret. Login to https://hclcr.io with your HCL softaware ID, selecting LOGIN VIA OIDC
PROVIDER, open your User Profile from the top right corner, and copy the CLI secret. Use
this string as the CLI secret in the secret
docker-registry command.
- DevOps Plan requires a PostgreSQL
database to create TeamSpace and Applications. The PostgreSQL database may be running in your
cluster or on hardware that resides outside of your cluster. The values used to connect to the
database are required when installing DevOps Plan. The helm chart provides the PostgreSQL
database by default. You can disable and use your own PostgreSQL database.
Note: If you have already
installed
DevOps Plan with the internal
PostgreSQL database and you plan to upgrade to the latest release version, then you must set the
internal PostgreSQL database password during the helm upgrade. Get the password for the internal
PostgreSQL database by running the following
command:
```bash
export POSTGRES_PASSWORD=$(kubectl get secret --namespace devopsplan ibm-devopsplan-ibm-devopsplan-prod-db-secret -o jsonpath="{.data.tenant-datastore-password}" | base64 -d)
```
Set the password during the upgrade:
```bash
--set spring.datastore.password=$POSTGRES_PASSWORD \
--set tenant.datastore.password=$POSTGRES_PASSWORD
```
- Persistent Volumes that will hold the devopsplan data, config, share and logs folders for DevOps
Plan are required. If your cluster supports default StorageClass (SC) and dynamic volume
provisioning, you will not need to create a SC and PersistentVolume (PV) before installing DevOps
Plan. If your cluster does not support default SC and dynamic volume provisioning, you will need to
either ensure a SC and PV is available or disable the persistent volume by setting
persistence.enabled to false before installing DevOps Plan.
- The helm chart enables the Keycloak Single Sign On feature installed with helm chart. You can
disable the Keycloak that is installed with the helm chart and use an external Keycloak instance
installed outside of the helm chart.
About this task
This guide shows you how to access DevOps Plan Helm Chart and install it in your own
environment.
Procedure
-
Install the chart
Add the
DevOps Plan helm chart to
repository to the local
client:
helm repo add --username=[Username] --password=[CLI secret] devops-plan https://hclcr.io/chartrepo/devops-plan
Tip:
You can list all supported Helm chart versions and Application versions by
using:
```
$ helm repo update
$ helm search repo devops-plan/hcl-devopsplan
```
You
can see the list of the Helm Chart and
DevOps Plan release versions. The Helm install install
the latest stable release version, unless you specify
--version [CHART VERSION] to
the helm install command.
Create a pull secret into namespace
devopsplan.
kubectl create secret docker-registry [secret-name] \
--docker-server=hclcr.io \
--docker-username=[Username] \
--docker-password=[CLI secret] \
--namespace=devopsplan
-
Install the helm chart with the default parameters into the namespace
devopsplan with the release name hcl-devopsplan.
helm install devopsplan devops-plan/hcl-devopsplan \
--namespace devopsplan \
--version [CHART VERSION] \
--set global.imagePullSecret=[secret-name]
Start the Keycloak home page by using https://[VirtualMachine-IP]:30104 and
trust the keycloak certificate. The username and password are both admin.
Start the DevOps Plan Home page in your browser by using
https://[VirtualMachine_IP]:30102.
-
Install on Kubernetes Cluster in cloud (Google Kubernetes Engine and Azure Kubernetes
Service).
- Run
helm
install.helm install hcl-devopsplan devops-plan/hcl-devopsplan \
--version [CHART VERSION] \
--namespace devopsplan \
--set global.imagePullSecret=[secret-name]
If
you plan to install the latest version of DevOps Plan, you do not need to add --version
[CHART VERSION].
- Run
kubectl get services to get the hcl-devopsplan-nginx service
EXTERNAL-IP address.
- Run
helm upgrade set with --set
nginx.urlMapping=https://[NGINX_EXTERNAL-IP]:5602, --set
analytics.urlMapping=https://[ANALYTICS_EXTERNAL-IP]:8290, and --set
service.urlMapping=https://[NGINX_EXTERNAL-IP]:8190.helm upgrade hcl-devopsplan devops-plan/hcl-devopsplan \
--namespace devopsplan \
--version [CHART VERSION] \
--set global.imagePullSecret=[secret-name] \
--set nginx.urlMapping=https://[EXTERNAL-IP]:5602 \
--set analytics.urlMapping=https://[EXTERNAL-IP]:8290 \
--set service.urlMapping=https://[EXTERNAL-IP]:8190
If
you plan to install the latest version of DevOps Plan, you do not need to add --version
[CHART VERSION].
- Start the HCL DevOps Plan home page in your browser by using
hcl-devopsplan service
EXTERNAL-IP address: https://[EXTERNAL_IP]:8190.
-
To install with Customize Parameters setting:
- Get a copy of the
values.yaml file from the helm chart so that you can update
it with values used by the
install.helm inspect values devops-plan/hcl-devopsplan > my_values.yaml --version [CHART VERSION]
- Edit the file
myvalues.yaml to specify the parameter values to use when
installing the DevOps Plan instance.
- Install the chart into the namespace
devopsplan with the release name
hcl-devopsplan and use the values from the myvalues.yaml
file.helm install hcl-devopsplan devops-plan/hcl-devopsplan \
--namespace devopsplan \
--version [CHART VERSION] \
--values my_values.yaml
You
can list all releases by using helm list.
If you plan to install the latest
version of DevOps Plan, you do not need to
add --version [CHART VERSION].
-
You can uninstall and delete the chart by using the helm delete command:
helm delete hcl-devopsplan \
--namespace devopsplan
-
To increase or decrease the number of DevOps Plan Server instances,
issue the following command:
kubectl scale --replicas=2 statefulset/hcl-devopsplan
-
To set an email address for feedback, the admin must set
feedback.to.emailaddress and
feedback.from.emailaddress during the installation or upgrade:
feedback:
toEmailaddress: [TO_EMAIL_ADDRESS]
fromEmailaddress: [FROM_EMAIL_ADDRESS]