apiVersion: triggers.tekton.dev/v1alpha1 kind: TriggerTemplate metadata: name: tekton-argocd-example-build-tt spec: params: - name: git-app-repo-url - name: git-app-repo-name - name: git-app-repo-revision resourcetemplates: - apiVersion: tekton.dev/v1alpha1 kind: PipelineResource metadata: name: git-app-repo-$(uid) namespace: tekton-argocd-example labels: pipeline: tekton deploy: argocd spec: params: - name: url value: $(tt.params.git-app-repo-url) - name: revision value: $(tt.params.git-app-repo-revision) - name: git-app-repo-name value: $(tt.params.git-app-repo-name) type: git - apiVersion: tekton.dev/v1alpha1 kind: PipelineResource metadata: name: image-registry-$(uid) namespace: tekton-argocd-example labels: pipeline: tekton deploy: argocd spec: params: - name: url # Replace with your docker registry name (e.g. my-acr.azurecr.io) value: "https://hub.docker.com/u/vtimofei" type: image - apiVersion: tekton.dev/v1alpha1 kind: PipelineRun metadata: generateName: tekton-argocd-example-build-deploy-pipeline-run- namespace: tekton-argocd-example labels: pipeline: tekton deploy: argocd spec: serviceAccountName: pipeline-sa pipelineRef: name: tekton-argocd-example-build-deploy-pipeline resources: - name: git-app-repo resourceRef: name: git-app-repo-$(uid) - name: image-registry resourceRef: name: image-registry-$(uid) --- apiVersion: triggers.tekton.dev/v1alpha1 kind: TriggerBinding metadata: name: tekton-argocd-example-build-git-tb spec: params: - name: git-app-repo-url # Replace with path to the JSON resource you want, based on the Git provider that you're using (e.g. for AzureDevOps: resource.repository.remoteUrl) value: $(body.repository.url) - name: git-app-repo-revision value: master --- apiVersion: triggers.tekton.dev/v1alpha1 kind: EventListener metadata: name: tekton-argocd-example-build-el spec: serviceAccountName: tekton-triggers-admin triggers: - bindings: - ref: tekton-argocd-example-build-git-tb template: name: tekton-argocd-example-build-tt --- apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: argocd-app namespace: argocd spec: dnsNames: - k8s-argocd.tk secretName: argocd-app-tls issuerRef: name: letsencrypt-cluster-issuer kind: ClusterIssuer --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: tekton-argocd-example-build-el-ingress annotations: cert-manager.io/cluster-issuer: letsencrypt-cluster-issuer kubernetes.io/ingress.class: nginx kubernetes.io/tls-acme: "true" nginx.ingress.kubernetes.io/ssl-passthrough: "true" nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" spec: rules: - host: k8s-argocd.tk http: paths: - path: /tekton-argocd-example-build-mapping/ pathType: Prefix backend: service: name: el-tekton-argocd-example-build-el port: number: 8080 tls: - hosts: - k8s-argocd.tk secretName: argocd-app-tls