Shipa Blog

Latest updates on our products, plus helpful articles relating to Kubernetes, container security, microservices and more

Continuous delivery with Ketch, GitHub Actions, and k3d

Continuous delivery with Ketch, GitHub Actions, and k3d

Can we combine the simplicity of deploying applications with Ketch with GitHub Actions and accomplish a fully automated continuous delivery pipeline?

Here’s what we’ll do.

We’ll create GitHub Actions that will fully automate all the tasks starting from creating a pull request all the way until a release is deployed to production.

We’ll create two pipelines. One will be executed whenever we create a pull request or make any change to existing PRs. The other will run as a result of pushing changes to the mainline.

The PR pipeline will perform the following steps.

  1. Build container images and push them to a registry
  2. Create a temporary (and free) Kubernetes cluster
  3. Deploy a release candidate to the cluster
  4. Run tests to validate whether the PR meets the quality standards

The mainline pipeline will perform the following steps.

  1. Build container images and push them to a registry
  2. Connect to the production cluster
  3. Deploy the release to the cluster

The creation of a temporary cluster will be done through k3d, while Ketch will handle deployments.

Let’s go: https://learn.theketch.io/docs/continuous-delivery-with-ketch-github-actions-and-k3d

Resources: