It is possible to use GitLab as a best-in-class GitOps tool, and this blog post series is going to show you how. GitOps is an operational framework that takes DevOps best practices used for application development such as version control, collaboration, compliance, and CI/CD tooling, and applies them to infrastructure automation. This series of easy-to-follow tutorials will focus on different user problems, including provisioning, managing a base infrastructure, and deploying various third-party or custom applications on top of them, that can be solved by pairing GitOps with GitLab.
Here are 8 tutorials on how to do GitOps with GitLab:
1. Here's how to do GitOps with GitLab
This tutorial sets the stage for what you will learn throughout the series, including the tech concepts you'll need to know.
2. Infrastructure provisioning with GitLab and Terraform
This tutorial walks you through setting up the underlying infrastructure using GitLab and Terraform.
3. Connect with a Kubernetes cluster
This tutorial demonstrates how to connect a Kubernetes cluster with GitLab for pull- and push-based deployments and easy security integrations.
4. How to tackle secrets management
This tutorial builds on the previous tutorial to show you how to use a Kubernetes cluster connection to manage secrets within a cluster.
This tutorial introduces you to CI/CD tunnels and shows step-by-step how to access a Kubernetes cluster using GitLab CI/CD.
6. Connecting GitLab with a Kubernetes cluster - Auto DevOps
This tutorial looks at how you can use Auto DevOps with all its bells and whistles to easily manage deployments.
7. Connecting GitLab with a Kubernetes cluster for GitOps-style application delivery
This tutorial shows you how to connect an application project to a manifest project for controlled, GitOps-style deployments.
8. Turn a GitLab agent for Kubernetes installation to manage itself
This tutorial is the culmination of the previous tutorials and will teach you how to turn a GitLab agent for Kubernetes installation to manage itself.
Read more about GitOps: