Argo CD Plugin

This topic describes the tasks available with the Argo CD plugin.

About Argo CD

Argo CD is a GitOps continuous delivery tool for Kubernetes, which continuously monitors all the running applications and compares the live state with the desired state specified in the Git repo. Argo CD automates the deployment of the desired application states in the specified target environments. Application deployments can track updates to branches, tags, or pinned to a specific version of manifests at a Git commit.

A deployed application whose live state deviates from the target state is considered OutOfSync.

Prerequisites

  1. Digital.ai Release 22.0.x or later
  2. Argo CD Server

Install the Digital.ai Argo CD Plugin

  1. Click the Admin menu from the top navigation bar.
  2. Select Manage Plugins.
  3. Search for Argo CD and click Install now.
  4. Contact Digital.ai Support for the plugin JAR file if it is not available in the Plugin Manager.

Connect to your Argo CD Server with Digital.ai Release

  1. Log on to Digital.ai Release as an Administrator.
  2. Select Connections from the sidebar navigation menu.
  3. Click the + icon next to ArgoCD: Server.
  4. Enter the title, Url, username, and password. You can also enter the Argo CD access token if you have one.

    argocd

  5. Click Test to verify your connection to the Argo CD server.
  6. Click Save if the connection is successful.

Argo CD Tasks

The following tasks are available with the Argo CD plugin

  • Add Repository
  • Create Project
  • Create Application
  • Sync Application
  • Get Sync Status
  • Get Manifest
  • Wait For Status

Add Repository

This task lets you create a new git repository.

  1. The task takes in parameters like the Repo Url, Git Username, Git Password or SSH Key.

add repository

  1. On successful creation, it returns the added repository URL.

Create Project

This task lets you create an Argo CD Project.

  1. The task takes in parameters like the Project Name, Source Repositories list and destination cluster and name spaces as a map.

create project

  1. On successful creation, it returns the created project name.

Create Application

This task lets you create an Argo CD application from definitions in the provided git repository.

  1. The task takes in parameters like the source repository url, destination cluster, and name space and sync options.

create application

  1. On successful creation, it returns the created application name.

Sync Application

This task lets you sync an Argo CD application to the Kubernetes cluster provided.

The task takes in the application name as parameter and returns the sync status.

sync application

Get Sync Status

This task lets you get the sync status an Argo CD application.

get sync status1

Get Manifest

This task lets you get the live and desired state manifest file data.

The task takes in the application name and resource name as parameter and returns the manifest file data.

get manifest

Wait For Status

This task is used to wait for the Argo application to move to the expected sync and health status.

The task takes in parameters like the ArgoCD Server, App name, and so on.

Wait For Status

Get Revision Metadata

This task is used to retrieve the application revision metadata based on the revision ID.

The task takes in parameters like the ArgoCD Server, App name, and Revision.

Get Revisions Metadata

Note: An input field called Revision is introduced with GetRevisionMetadata task. This Revision field is added as an output field in SyncApplication and SyncStatus tasks. You can use these revision values in a complete flow context.