Continuous DeliveryWith GitOps Using Kubernetes
A one-hour discussion of Continuous Delivery with GitOps (using Kubernetes) with key concepts and real-time examples featuring trunk-based development and feature flags.
The video was recorded at a Keyhole Software Public Education Event in August 2022. Speaker Jaime Niswonger is a Principal Consultant at Keyhole Software with nearly three decades of experience as a change agent for enterprise software development.
Continuous Delivery With GitOpsConcepts + Code Walkthrough | Using Kubernetes
Recorded at a Keyhole Software education event featuring Principal Consultant Jaime Niswonger in August 2022.
Initially, Niswonger level-sets continuous delivery concepts, including continuous delivery motivations, challenges, and key tenets. He then introduces trunk-based (or main-based) development using feature flags (feature toggles) with an eye for best practices.
Beginning at 25:30, the demo showcases the real-time automated deployment of an API-based application with the following features:
- The TypeScript-based Apollo GraphQL API application lives in a source repository (Git).
- Any code commit triggers a pipeline automation (GitHub Action workflow).
- Once complete, that ultimately builds and produces a Docker image in a Docker Hub repository.
- The solution leverages Flux CD - a GitOps engine from Weaveworks.
- When the change is detected, Flux deploys code in an automated fashion following stated declarative GitOps policies and reconciles code changes to various environments (staging, production).
All source code from this demo is available at:
Throughout the presentation, Principal Consultant Jaime Niswonger demonstrates how Continuous Delivery promotes audit-ability, repeatability, drift protection, and automated code remediation.