Upgrade KubeRocketCI v3.7 to 3.8
We suggest backing up the KubeRocketCI environment before starting the upgrade procedure.
This section provides detailed instructions for upgrading the KubeRocketCI to the 3.8.1 version. Follow the steps and requirements outlined below:
-
Delete the following resources:
kubectl -n edp delete ingress edp-headlampkubectl -n edp delete ingress edp-tekton-dashboardkubectl -n edp delete ingress el-github-listener -
Delete the following Custom Resource Definitions (CRDs):
kubectl delete CustomResourceDefinition edpcomponents.v1.edp.epam.cominfoPrior to deleting CRDs, please remove all the complementing resources:
kubectl -n edp get edpcomponent -o custom-columns=":metadata.name" | xargs -I {} kubectl -n edp delete edpcomponent {} -
In Keycloak, update the KubeRocketCI portal URL:
Navigate to the Keycloak realm with the
Portalclient. Update theValid redirect URIsfield:Old value:
https://edp-headlamp-edp.<dns_wildcard>/*New value:
https://portal-edp.<dns_wildcard>/*
-
Remove all the Argo CD applications:
warningThis command will delete all the deployments.
kubectl -n edp get application -o custom-columns=":metadata.name" | xargs -I {} kubectl -n edp get application {} -o json | jq 'del(.metadata.finalizers)' | kubectl replace -f -infoBeginning from version 3.8.x, KubeRocketCI uses Argo CD application set instead applications to manage deploy environments, please ensure to upgrade your Argo CD instance to v2.10.3 and higher to work with this kind of resource. An example of how to install it is provided in the edp-cluster-addons repository.
-
Familiarize yourself with the updated file structure of the values.yaml file and adjust your values.yaml file accordingly:
-
Starting from the version 3.8.x, KubeRocketCI supports multiple Git servers, so the
global.gitProvidervalue was renamed:Old format:
global:gitProvider: githubNew format:
global:gitProviders:- github# - gitlab# - gerrit...edp-tekton:gitServers:github:gitProvider: githubhost: github.comwebhook:skipWebhookSSLVerification: falseeventListener:enabled: trueresources:requests:memory: "64Mi"cpu: "50m"limits:memory: "128Mi"cpu: "500m"ingress:enabled: true -
The
EDP-componentscustom resources migrated to thequick-linkssection:Old format:
EDPComponents:- prometheus:url: https://ingress-prometheus.example.comvisible: trueicon: icon_in_base64- kibana:url: https://ingress-kibana.example.comvisible: falseicon: icon_in_base64- another_tool:url: https://ingress-anothertool.example.comvisible: trueicon: icon_in_base64New format for default components:
quickLinks:argocd: "https://argocd.example.com"defectdojo: "https://defectdojo.example.com"dependency_track: "https://dependency_track.example.com"docker_registry: "https://docker_registry.example.com"grafana: "https://grafana.example.com"kibana: "https://kibana.example.com"nexus: "https://nexus.example.com"sonar: "https://sonar.example.com"New format for extra components:
extraQuickLinks:- prometheus:url: https://ingress-prometheus.example.comvisible: trueicon: icon_in_base64- another_tool:url: https://ingress-anothertool.example.comvisible: trueicon: icon_in_base64
-
-
To upgrade KubeRocketCI to the v3.8.1, run the following command:
helm upgrade edp epamedp/edp-install -n edp --values values.yaml --version=3.8.1noteTo verify the installation, test the deployment before applying it to the cluster using the
--dry-runtag:
helm upgrade edp epamedp/edp-install -n edp --values values.yaml --version=3.8.1 --dry-run -
Update webhooks for Github and GitLab:
- Command
- Manual
kubectl -n edp get codebases -o custom-columns=":metadata.name" | xargs -I {} kubectl patch codebases -n edp {} --subresource=status --type=json -p '[{"op": "remove", "path": "/status/webHookID"}]'kubectl delete pod -l name=codebase-operator- GitHub
- GitLab
Open repository in Github, navigate to Settings -> Webhooks -> Select exist webhook and click
edit. Change Payload URL:Old value: https://el-github-listener-edp.<dns_wildcard>New value: https://el-github-edp.<dns_wildcard>Open repository in Github, navigate to Settings -> Webhooks -> Select exist webhook and click
edit. Change Payload URL:Old value: https://el-gitlab-listener-edp.<dns_wildcard>New value: https://el-gitlab-edp.<dns_wildcard>