How do I do progressive delivery for Tekton with Argo CD?

Progressive delivery is a modern deployment strategy that allows you to release features gradually to specific subsets of users, minimizing potential disruptions. With Tekton and Argo CD, you can implement progressive delivery through pipelines and GitOps practices. Below is an example of how to set up progressive delivery using Tekton tasks and Argo CD for a Kubernetes application.

apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: my-app spec: project: default source: repoURL: 'https://github.com/myorg/my-app' targetRevision: HEAD path: k8s destination: server: 'https://kubernetes.default.svc' namespace: my-app syncPolicy: automated: prune: true selfHeal: true syncOptions: - CreateNamespace=true progressiveDelivery: rollout: strategy: Canary maxSurge: 1 maxUnavailable: 0

Progressive Delivery Tekton Argo CD GitOps Kubernetes Canary Releases