Header Ads

CD Workflow Without ArgoCD

CD Workflow Without ArgoCD

Continuous Delivery (CD) is a software engineering approach that enables teams to frequently and consistently release software updates to production. CD workflows typically involve tools such as Git, Jenkins, and ArgoCD to automate the deployment process. However, in some cases, teams may not have access to ArgoCD or prefer to use other tools to achieve CD.

In this article, we will explore a CD workflow without ArgoCD and discuss the tools and processes involved.

I. Prerequisites

Before we dive into the CD workflow, let's ensure that we have the necessary prerequisites in place.

  • A Git repository that contains your application code.
  • A Kubernetes cluster where your application will be deployed.
  • A Continuous Integration (CI) tool such as Jenkins or CircleCI that can build and package your application into a container image.
  • A container registry such as Docker Hub or Google Container Registry (GCR) to store your container images.

II. Building the Container Image

The first step in our CD workflow is to build the container image. We will use a CI tool such as Jenkins or CircleCI to perform this task. Here are the steps involved:

  1. Create a Jenkins job or CircleCI workflow that listens for changes to your Git repository.
  2. Configure the job/workflow to build your application into a container image using a Dockerfile.
  3. Push the container image to your container registry.

III. Deploying the Container Image

Once the container image has been built and pushed to the container registry, the next step is to deploy it to your Kubernetes cluster. Here's how you can achieve this:

  1. Create a Kubernetes deployment manifest that specifies the container image you want to deploy.
  2. Apply the deployment manifest to your Kubernetes cluster using kubectl apply.
  3. Verify that your application has been deployed successfully using kubectl get pods.

IV. Updating the Container Image

One of the benefits of CD is that it enables teams to update their applications frequently. Let's see how we can update the container image in our CD workflow:

  1. Make changes to your application code and commit them to your Git repository.
  2. Trigger the Jenkins job or CircleCI workflow to rebuild the container image.
  3. Push the new container image to your container registry.
  4. Update the Kubernetes deployment manifest to reference the new container image.
  5. Apply the updated deployment manifest to your Kubernetes cluster using kubectl apply.

V. Rolling Back Changes

Sometimes, things can go wrong, and you may need to roll back changes to a previous version of your application. Here's how you can do this:

  1. Identify the previous version of the container image that you want to roll back to.
  2. Update the Kubernetes deployment manifest to reference the previous version of the container image.
  3. Apply the updated deployment manifest to your Kubernetes cluster using kubectl apply.


In this article, we explored a CD workflow without ArgoCD. We discussed the tools and processes involved in building and deploying container images to a Kubernetes cluster. While ArgoCD provides a streamlined approach to CD, teams can achieve CD using other tools such as Jenkins or CircleCI. By following the steps outlined in this article, teams can achieve frequent and consistent software releases to production.

Related Searches and Questions asked:

  • What is the difference between Jenkins and ArgoCD?
  • What is the difference between GitOps and ArgoCD?
  • Understanding Argo CD
  • How to Use ArgoCD with GitHub?
  • That's it for this post. Keep practicing and have fun. Leave your comments if any.

    Powered by Blogger.