1

How can I migrate my helm deployment to ArgoCD, taking into account my repository structure which includes a helm chart and a projects folder containing application-specific values to override default helm values.yaml? In my GitLab CI's deploy stage, I use the "helm upgrade" command to deploy the related application, but I'm struggling to apply this dynamic approach to ArgoCD. Could you provide any guidance or suggestions?

.gitlab.ci.yaml - deploy:

  - git clone --depth 1 http://:${REPO_TOKEN}@companygitlab/devops/helm.git
    - mv helm/bin/* /usr/local/bin/
    - |
      helm upgrade --install --atomic --timeout 10m0s \
        -f ./helm/values.yaml \
        -f ./helm/projects/${PROJECT}.yaml \
        --set image.repository=${DOCKER_IMAGE_URI} --set appVersion=${CI_COMMIT_SHORT_SHA} \
        --set 'ingress.hosts[0].host'=${DOMAIN_PRIVATE} --set 'ingress.hosts[1].host'=${DOMAIN_PUBLIC} \
        ${TARGET}-${PROJECT} \
        ./helm

Helm repo:

│   .helmignore
│   Chart.yaml
│   values.yaml
│
├───projects
│       apigateway.yaml
│       application1.yaml
│       application2.yaml
│       application3.yaml
│
└───templates
    │   autoscaler.yaml
    │   configmap.yaml
    │   deployment.yaml
    │   ingress.yaml
    │   NOTES.txt
    │   service.yaml
    │   serviceaccount.yaml
    │   _helpers.tpl
    │
    └───tests
            test-connection.yaml
lagrance
  • 55
  • 5

0 Answers0