argo-sync.yaml add
This commit is contained in:
49
clustertask/argo-sync.yaml
Normal file
49
clustertask/argo-sync.yaml
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
apiVersion: tekton.dev/v1beta1
|
||||||
|
kind: ClusterTask
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
tekton.dev/categories: Deployment
|
||||||
|
tekton.dev/displayName: argocd
|
||||||
|
tekton.dev/pipelines.minVersion: 0.12.1
|
||||||
|
tekton.dev/platforms: linux/amd64
|
||||||
|
tekton.dev/tags: deploy
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/version: "0.2"
|
||||||
|
name: argocd-task-sync-and-wait
|
||||||
|
spec:
|
||||||
|
description: |-
|
||||||
|
This task syncs (deploys) an Argo CD application and waits for it to be healthy.
|
||||||
|
To do so, it requires the address of the Argo CD server and some form of authentication either a username/password or an authentication token.
|
||||||
|
params:
|
||||||
|
- description: name of the application to sync
|
||||||
|
name: application-name
|
||||||
|
type: string
|
||||||
|
- default: HEAD
|
||||||
|
description: the revision to sync to
|
||||||
|
name: revision
|
||||||
|
type: string
|
||||||
|
- default: --
|
||||||
|
name: flags
|
||||||
|
type: string
|
||||||
|
- default: v2.2.5
|
||||||
|
name: argocd-version
|
||||||
|
type: string
|
||||||
|
stepTemplate:
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: argocd-env-configmap
|
||||||
|
- secretRef:
|
||||||
|
name: argocd-env-secret
|
||||||
|
name: ""
|
||||||
|
resources: {}
|
||||||
|
steps:
|
||||||
|
- image: quay.io/argoproj/argocd:$(params.argocd-version)
|
||||||
|
name: login
|
||||||
|
resources: {}
|
||||||
|
script: |
|
||||||
|
if [ -z "$ARGOCD_AUTH_TOKEN" ]; then
|
||||||
|
yes | argocd login "$ARGOCD_SERVER" --username="$ARGOCD_USERNAME" --password="$ARGOCD_PASSWORD" "$(params.flags)";
|
||||||
|
fi
|
||||||
|
argocd --grpc-web app get --refresh "$(params.application-name)" > /dev/null && argocd --grpc-web app wait "$(params.application-name)" --sync --health
|
||||||
|
argocd app sync "$(params.application-name)" --revision "$(params.revision)" "$(params.flags)"
|
||||||
|
argocd app wait "$(params.application-name)" --health "$(params.flags)"
|
||||||
Reference in New Issue
Block a user