Demo of Application Development with OpenShift
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

83 lines
1.7 KiB

apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
name: demo-appdev
spec:
workspaces:
- name: scratch
params:
- name: gitRepositoryURL
type: string
- name: outputContainerImage
type: string
tasks:
# Clone the git repository
- name: git-clone-src
params:
- name: url
value: "$(params.gitRepositoryURL)"
- name: revision
value: "main"
- name: verbose
value: "false"
workspaces:
- name: output
workspace: scratch
subPath: src
taskRef:
name: git-clone
# Clone the git repository (GitOps)
- name: git-clone-gitops
params:
- name: url
value: "$(params.gitRepositoryURL)"
- name: revision
value: "gitops"
- name: verbose
value: "false"
workspaces:
- name: output
workspace: scratch
subPath: gitops
taskRef:
name: git-clone
# Build the Quarkus app
- name: maven-package
runAfter:
- git-clone-src
workspaces:
- name: src
workspace: scratch
subPath: src
taskRef:
name: maven-package
# Build and push the container images
- name: buildah
runAfter:
- maven-package
params:
- name: outputContainerImage
value: "$(params.outputContainerImage)"
workspaces:
- name: src
workspace: scratch
subPath: src
- name: containers
workspace: scratch
subPath: containers
taskRef:
name: buildah
# Deploy the new version
- name: deploy
runAfter:
- buildah
- git-clone-gitops
params:
- name: imageDigest
value: "$(tasks.buildah.results.imageDigest)"
workspaces:
- name: src
workspace: scratch
subPath: gitops
taskRef:
name: deploy