Gitlab will use helm to deploy, but you don’t actually need anything on your kubernetes cluster. I don’t like the gui auto-devops checkbox because it creates an ingress and namespace that I don’t like, so I have the following:
.gitlab-ci.yml
include:
- template: Auto-DevOps.gitlab-ci.yml
production_manual:
environment:
url: https://demo-python.$KUBE_INGRESS_BASE_DOMAIN
kubernetes:
namespace: demo-python-prod
staging:
environment:
url: https://demo-python.$KUBE_INGRESS_BASE_DOMAIN
kubernetes:
namespace: demo-python-staging
review:
environment:
url: https://demo-python.$KUBE_INGRESS_BASE_DOMAIN
kubernetes:
namespace: demo-python-review
And then, in your project, create a .gitlab folder with auto-deploy-values.yaml file in it which can customize your app. The minimum I use is a service port for your app but there are a bunch you can have (auto-deploy-app docs):
.gitlab/auto-deploy-values.yaml
service:
externalPort: 8080
internalPort: 8080
No actual Helm needed on your cluster…