Skip to main content
Version: Release 23.1

Workflow to Install ArgoCD

Before You Begin

This tutorial involves working with a variety of tools and technologies such as Digital.ai Release, Argo CD, Remote Runners, Kubernetes, GitHub, and so on. You can perform this task by simply following the instructions. However, being familiar with these tools and technologies can help you considerably when you try this out in your test environment.

Before running your workflows, ensure that you install Remote runner, import workflows, connect to a Kubernetes server from your Release instance.

What's the objective?

The objective is to illustrate how to use the Install ArgoCD workflow in Digital.ai Release to install Argo CD in a Kubernetes cluster.

Though the Digital.ai Release supports GitHub, GitLab, and BitBucket repositories, this tutorial is built with the GitHub repository for illustrative purposes.

What do you need?

You must have the following:

  • Remote Runners
  • Digital.ai Release with the following plugins installed:
    • xlr-xld-remote-integration
    • xlr-k8s-remote-integration
    • xlr-argocd-remote-integration
    • xlr-argocd-integration
  • GitHub as the repository that hosts the Applications workflows
  • A computer that runs Windows, macOS, or Linux to install and run the kubectl and other CLIs.
  • A Kubernetes cluster where Argo CD will be installed, and its connection established via Connections page.
  • kubectl
  • The template that you will run as a workflow must have the tag app-pipeline-templates added to the Tags field in the Properties screen.

What do you have?

To get your Install ArgoCD workflow, see how to Set up Workflows.

Here's a detailed step-by-step.

Step 1 - Set up your Kubernetes Cluster

Note: The instructions to set up the cluster are indicative of the process. You may have to keep abreast of the latest developments with regards to the cloud platform you work with and set up the cluster to suit your requirements.

The process of setting up a Kubernetes cluster and the tools required for the same varies from one platform to the other. However, there are certain things that you must think through before setting up a Kubernetes cluster in general.

You can install Argo CD on the following Kubernetes platforms.

  • Plain Multi-node Kubernetes Cluster On-premise
  • Amazon EKS
  • Azure AKS
  • Google GKE
  • OpenShift

Step 2 - Connect to your Kubernetes Server

Go to the Connections page to configure your Kubernetes server.

Step 3 - Run the Install ArgoCD Workflow

  1. Open the folder in which the templates are imported.
  2. In the left navigation pane, click Application pipelines > Application management > Create application. The Choose Application Creation Workflow screen opens as a service catalog with the list of workflows.
  3. Hover over Install ArgoCD workflow and click Run workflow.

Step 4 - Check if Remote Runner Exists

This step checks if the Release instance has a remote runner enabled. Also, the enabled remote runner needs to have the capabilities set to remote.

Step 5 - Input for ArgoCD Installation

  1. In the Kubernetes API server field, select a Kubernetes server where the Argo CD will be installed. Alternatively, you can also create a new connection by clicking Create new Kubernetes API Server.
  2. In the Namespace field, enter a value. This is the namespace where Argo CD will be installed.
  3. Click Next.

Step 6 - Check if ArgoCD Namespace Exists

This step checks if the namespace already exists. If it exists, the next step gets skipped automatically. However, a check will be performed to see, if the Argo CD services already exist.

Step 7 - List all Services in ArgoCD Namespace

If the namespace exists, this step is skipped automatically.

If the namespace does not exist in the previous step, then this task will list all the services and after that will check if there are any Argo CD services.

Step 8 - Validate that ArgoCD Services don't Exist

If the namespace exists, this step is skipped automatically.

This step checks if there are any Argo CD services already existing in this namespace. If there are some, it means that Argo CD is already installed, and the release fails.

Step 9 - Create ArgoCD Namespace

This step creates a namespace to install Argo CD after confirming that there are no existing Argo CD services.

Step 10 - Apply ArgoCD Installation on Cluster

This step applies the Argo CD installation YAML on the created Argo CD namespace.

Step 11 - Check Status of Pods in ArgoCD Namespace

This step checks if the Argo CD services are running successfully and displays its current status.

Step 12 - Fetch Secret

In the Secure Response field, the secret is fetched and masked. Click Next.

Step 13 - Input for ArgoCD CI

  1. In the ArgoCD API Server Title field, enter the title of the Argo CD CI.
  2. In the ArgoCD API Server Host field, enter the URL of the ArgoCD API Server, where Argo CD is installed.
  3. Click Next.

Step 14 - Create ArgoCD live deployment CIs

This step creates an ArgoCD API server CI with given ArgoCD API Server Title and ArgoCD API Server Host.

Note: Authentication is set to basic with admin username and initial password. For live deployments, webhook endpoint and event source are created.

Step 15 - View Applications

  1. Click Finish when the steps are completed.
  2. The created applications are visible by navigating to Application Pipeline > Applications management screen.

App Workflows