apiVersion: tekton.dev/v1beta1 kind: Pipeline metadata: name: app-pipeline namespace: tekton-pipelines spec: params: - name: app-name - name: git-url - name: git-revision - name: pr-number - name: event-type workspaces: - name: shared-data tasks: - name: fetch-repository taskRef: name: git-clone workspaces: - name: output workspace: shared-data params: - name: url value: $(params.git-url) - name: revision value: $(params.git-revision) - name: build-app runAfter: [fetch-repository] taskRef: name: build-node workspaces: - name: source workspace: shared-data - name: build-and-push-image runAfter: [build-app] taskRef: name: kaniko workspaces: - name: source workspace: shared-data params: - name: IMAGE value: "ghcr.io/pingu-studio/$(params.app-name):$(params.git-revision)" - name: deploy-preview when: - input: "$(params.event-type)" operator: in values: ["pull_request"] runAfter: [build-and-push-image] taskRef: name: manage-preview workspaces: - name: source workspace: shared-data params: - name: app-name value: $(params.app-name) - name: pr-number value: $(params.pr-number) - name: image-tag value: $(params.git-revision) - name: action value: "apply"