Pipedash
Providers

Providers

Authentication, required config, base URL, trigger parameters, cancel support and extras of the seven Pipedash providers.

Pipedash ships seven provider plugins: GitHub Actions, GitLab CI, Bitbucket Pipelines, Buildkite, Jenkins, Tekton and ArgoCD. Each plugin lists pipelines from its CI system and maps run states to six Pipedash statuses.

Comparison

All seven plugins list pipelines, show runs and trigger them. Only Buildkite also shows agents and artifacts.

ProviderType idAuthenticationRequired configBase URL and self-hosting
GitHub ActionsgithubPersonal access token, classic or fine-grainedtokenOptional base_url, default https://github.com. Other hosts use /api/v3 (GitHub Enterprise).
GitLab CIgitlabPersonal access token with api scopetokenOptional base_url, default https://gitlab.com. Pipedash appends /api/v4.
Bitbucket PipelinesbitbucketHTTP Basic with Atlassian email and API tokenemail, api_tokenFixed https://api.bitbucket.org/2.0. Cloud only.
BuildkitebuildkiteAPI access tokentokenFixed https://api.buildkite.com/v2.
JenkinsjenkinsHTTP Basic with username and API tokenserver_url, username, tokenA self-hosted server. server_url is required.
Tekton CDtektonKubeconfig credentialsNoneNo URL. The kubeconfig supplies the cluster endpoint.
ArgoCDargocdBearer tokenserver_url, tokenA self-hosted server. server_url is required. Optional insecure skips TLS checks.
ProviderTrigger parametersCancelAgents and artifacts
GitHub Actionsref plus workflow inputsYesNo
GitLab CIref plus variablesYesNo
Bitbucket Pipelinesref, custom_pipelineYes, except pipelines waiting for approvalNo
BuildkitebranchYesYes
JenkinsThe job's own parametersYesNo
Tekton CDThe pipeline's own paramsYes, deletes the PipelineRunNo
ArgoCDrevision, prune, dry_run, force, apply_onlyYes, stops the running operationNo

Several instances of one provider

Provider Type menu listing the seven supported providers
The Provider Type menu in the Add Provider dialog.
Settings, Providers page listing three configured providers
Every instance appears in Settings, Providers.

Pipedash accepts the same provider type any number of times. Each instance has its own name, token, pipeline selection and refresh interval. The example below defines two GitHub instances with refresh intervals of 30 and 60 seconds.

[providers.github-work]
name = "GitHub Work"
type = "github"
token = "${GITHUB_WORK_TOKEN}"
refresh_interval = 30

[providers.github-oss]
name = "GitHub OSS"
type = "github"
token = "${GITHUB_OSS_TOKEN}"
refresh_interval = 60

The table name after providers. is the instance key. It must be unique in the file.

Refresh interval per provider

Each provider has its own refresh interval in seconds, and the minimum is 5. The app and PUT /api/v1/providers/{id}/refresh-interval reject smaller values with Refresh interval must be at least 5 seconds.

The default for an omitted value depends on where the value is set:

WhereDefault
refresh_interval in the TOML file30
Add provider dialog in the app30
Create or update request to the REST API60

See Refresh for how Pipedash schedules polling, and Configuration for the full file layout.

Provider pages