GitLab

CI/CD pipeline: GitLab & Helm for Kubernetes Auto Deploy

Sep 21, 2017Sergey Nuzhdin
CI/CD pipeline: GitLab & Helm for Kubernetes Auto Deploy
SummaryAI, from the source post

This post details the evolution of a GitLab CI/CD pipeline for Golang microservices, specifically focusing on auto-deployment to Kubernetes using Helm. Key changes include the removal of docker-in-docker, the use of caching for packages instead of pre-built images, splitting the pipeline into multiple steps, and configuring Helm for deployment. It also covers building Golang images with specific directory adjustments, installing dependencies with `glide install`, and managing Kubernetes configurations via base64 encoded `kube_config` variables. The deployment stage demonstrates how to use `helm init --client-only`, add chart repositories, and perform conditional `helm install` or `helm upgrade` based on existing releases, including managing application versions via `Chart.yaml`.

More from the GitLab CI and Distributed Builds trail