sebastiandaschner blog


Video course on cloud-native CI/CD with Tekton & ArgoCD

thursday, november 12, 2020

A lot of enterprise workloads have been moved to cloud-native environments, powered by Kubernetes or OpenShift. Yet, many projects are struggling with updating their Continuous Delivery stack. In this video course, I want to show how to implement a proper Continuous Delivery pipeline for modern Enterprise Java projects, using Tekton and ArgoCD.

We’re going to see what a non-trivial CI/CD pipeline for a Java project looks like, that includes deploying to different environments and running system as well as smoke tests. We’ll also see what gotchas we might run into and how to troubleshoot our Tekton builds.

You can find the example sources on GitHub:

 

1. Introduction & CI/CD Architecture

In this video, I’ll give an introduction to the cloud-native Continuous Delivery approach that we want to use for an example Java project. We’ll also see the CI/CD architecture within our Kubernetes cluster, with Tekton and ArgoCD.

 

2. Pipeline

In this video, I’ll show you an overview of the pipeline which builds and deploys our Java project.

 

3. ArgoCD Introduction

In this video, we’ll see an introduction to ArgoCD, how to install and configure it, and what the ArgoCD dashboard looks like.

 

4. Tekton Introduction & Dashboard

In this video, we’ll see an introduction to Tekton and the Tekton dashboard, and how to configure and execute basic Tekton resources.

 

5. Pipeline tasks

In this video, we’ll have a detailed look into the individual Tekton tasks for our Java project, and how they are defined and configured.

 

6. Creating Secrets for Git & Docker Access

In this video, we’ll see how to create the required Kubernetes secrets for accessing Git and Docker repositories and what to take into account.

 

7. Speeding Up Maven Builds

In this video, we’ll see how to speed up our Maven builds, and which approaches are there to pre-define the Maven dependency artifacts.

 

8. Tekton Triggers & GitHub WebHooks

In this video, we’ll see how to start our pipeline automatically on GitHub events by using Tekton Triggers and GitHub WebHooks. We’ll cover how to define Tekton Triggers, how to customize under which conditions our pipeline should execute, and how to configure dynamic build parameters.

 

9. Troubleshooting Tekton Builds & Outro

In this video, we’ll see how to troubleshoot Tekton and ArgoCD resources, when things go wrong. We’ll see which ways we have to look into our cluster, especially in a way that doesn’t require use to try out the whole pipeline every time, while we’re building up our project’s CI/CD approach.

 

Further resources

Check out the course’s repositories and some further resources:

 

Found the post useful? Subscribe to my newsletter for more free content, tips and tricks on IT & Java:

All opinions are my own and do not reflect those of my employer or colleagues.