Argo CD Plugin
Plugin details | |
---|---|
Created by | Roadie |
Category | Image |
Source | GitHub |
Type | Open-source plugin |
Configuration
Application configuration YAML
This plugin requires a backend proxy configuration to make calls to your argo-cd instance with authentication.
- Under the Plugins tab in Admin, go to
app-config.yaml
and Edit YAML to configure yourusername
along with theurl
to your argo instance in the format as shown below.
# app-config.yaml
argocd:
username: your-username
password: ${ARGOCD_PASSWORD}
appLocatorMethods:
- type: 'config'
instances:
- name: argoInstance1
url: https://argoInstance1.com
token: ${ARGOCD_AUTH_TOKEN}
Secrets
-
You need to add the
ARGOCD_PASSWORD
andARGOCD_AUTH_TOKEN
(Optional) as a Harness Secret. Also, if both are mentionedARGOCD_PASSWORD
will take precedence. -
Create secret in Harness to store API token, click on “New Secret Text” and enter values as shown below.
Layout
No action required
This plugin exports a UI card that you can show on the Overview tab of a service or any other layout page. The following configuration is set by default in Layout under Catalog Entities for Service and you do not need to change anything:
- component: EntityArgoCDOverviewCard
Annotations
- Details of your argo-cd instance are correlated to IDP entities using an annotation added in the entity's
catalog-info.yaml
file.
metadata:
annotations:
argocd/app-name: <your-app-name>
Note
When using ArgoCD without SSL(HTTPS), the plugin may fail to retrieve data correctly, even if configured with the HTTPS endpoint. This occurs because when operating over HTTP, ArgoCD will not accept the connection unless the server.insecure
configuration is set to true
.
In Kubernetes (K8s) environments where ArgoCD is deployed, the associated ConfigMap may not include this configuration flag by default. The server.insecure
flag needs to be enabled in the ConfigMap to allow HTTP access. The following Kubernetes commands can be used to enable this configuration:
kubectl patch configmap argocd-cmd-params-cm -n argocd --type merge -p '{"data":{"server.insecure":"true"}}'
kubectl rollout restart deployment argocd-server -n argocd
Support
The plugin is owned by RedHat and managed in this repository as an open-source project. Create a GitHub issue to report bugs or suggest new features for the plugin.