Pipedash
Providers

ArgoCD

Monitoring of ArgoCD applications and sync history in Pipedash, with Git organization filters and sync triggers.

The ArgoCD plugin (argocd) treats each ArgoCD application as a pipeline. It shows sync and health state, lists deployment history as runs, starts syncs and stops running operations.

Requirements

The plugin authenticates with an ArgoCD authentication token or a Kubernetes service account token, which Pipedash sends as a bearer token. ArgoCD has no optional scopes. The token needs permission to read applications, because validation lists them.

Configuration

Add Provider dialog with ArgoCD fields
ArgoCD asks for a server URL and token, with optional TLS skip and organization filter.
KeyTypeRequiredDefaultDescription
server_urlTextYesNoneArgoCD API server URL, for example https://argocd.example.com. Must start with http:// or https://.
tokenPasswordYesNoneArgoCD authentication token or Kubernetes service account token.
insecureBooleanNofalseSkips TLS certificate verification, for self-signed certificates.
organizationsMultiSelectNoNoneGit organizations that filter the applications. Empty shows all. In the file, the value is a comma-separated string.

The choices for organizations are the Git organizations of the source repositories of the applications. The config table of the TOML file also takes selected_items, a comma-separated list of application names.

Base URL

ArgoCD has no default host, so server_url is required. A trailing slash is ignored. insecure = true suits a server with a self-signed certificate.

Pipeline discovery

Pipedash lists all applications from the server, keeps those whose source repository belongs to a listed Git organization, then keeps those named in selected_items. Without a filter, all applications stay. The Git organization is the segment before the repository name in the source URL, for both HTTPS and SSH URLs, so [email protected]:acme/app.git gives acme. Search matches application name and repository URL.

Run history comes from the application's deployment history, newest first. Pipedash adds the current operation as the first run when the application has one.

Trigger parameters

Triggering a pipeline starts a sync of the application. None of the options is required.

NameTypeRequiredDefaultDescription
revisionStringNoNoneGit revision (branch, tag or commit SHA) to sync to. Empty uses the target revision.
pruneBooleanNofalseDeletes resources that are no longer defined in Git.
dry_runBooleanNofalsePreviews the sync without applying changes.
forceBooleanNofalseForces the sync even if resources are already synced.
apply_onlyBooleanNofalseSkips pre-sync and post-sync hooks.

Cancel

Cancel stops the running operation of the application. The run number is ignored, because an application has one operation at a time.

TOML example

[providers.argocd-prod]
name = "ArgoCD Prod"
type = "argocd"
token = "${ARGOCD_TOKEN}"
refresh_interval = 30

[providers.argocd-prod.config]
server_url = "https://argocd.example.com"
insecure = "false"
organizations = "acme,platform"
selected_items = "payments,checkout"

Status mapping

The application list uses the operation phase first, then the health status, then the sync status.

Pipedash statusArgoCD state
successHealth Healthy and sync status Synced
failedOperation phase Failed or Error, or health Degraded or Missing
runningOperation phase Running or Terminating, or health Progressing
pendingHealth Healthy with any other sync status, and any other health value
cancelledHealth Suspended
skippedNot produced by this plugin

Runs follow a separate rule. The current operation maps Running and Terminating to running, Succeeded to success, Failed and Error to failed, and any other phase to pending. Entries from the deployment history always map to success.