Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multi platform PR pipeline #2

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
276 changes: 268 additions & 8 deletions .tekton/multi-platform-test-pull-request.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ spec:
- name: show-sbom
params:
- name: IMAGE_URL
value: $(tasks.build-container.results.IMAGE_URL)
value: $(tasks.build-container-amd64.results.IMAGE_URL)
taskRef:
params:
- name: name
Expand Down Expand Up @@ -128,7 +128,7 @@ spec:
value: $(tasks.clone-repository.results.commit)
- description: ""
name: JAVA_COMMUNITY_DEPENDENCIES
value: $(tasks.build-container.results.JAVA_COMMUNITY_DEPENDENCIES)
value: $(tasks.build-container-amd64.results.JAVA_COMMUNITY_DEPENDENCIES)
tasks:
- name: init
params:
Expand Down Expand Up @@ -180,6 +180,90 @@ spec:
workspace: workspace
- name: basic-auth
workspace: git-auth
- name: clone-repository-arm64
params:
- name: url
value: $(params.git-url)
- name: revision
value: $(params.revision)
runAfter:
- init
taskRef:
kind: Task
params:
- name: name
value: git-clone
- name: bundle
value: quay.io/redhat-appstudio-tekton-catalog/task-git-clone:0.1@sha256:1f84973a21aabea38434b1f663abc4cb2d86565a9c7aae1f90decb43a8fa48eb
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: output
workspace: workspace-arm64
- name: basic-auth
workspace: git-auth
- name: clone-repository-s390x
params:
- name: url
value: $(params.git-url)
- name: revision
value: $(params.revision)
runAfter:
- init
taskRef:
kind: Task
params:
- name: name
value: git-clone
- name: bundle
value: quay.io/redhat-appstudio-tekton-catalog/task-git-clone:0.1@sha256:1f84973a21aabea38434b1f663abc4cb2d86565a9c7aae1f90decb43a8fa48eb
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: output
workspace: workspace-s390x
- name: basic-auth
workspace: git-auth
- name: clone-repository-ppc64le
params:
- name: url
value: $(params.git-url)
- name: revision
value: $(params.revision)
runAfter:
- init
taskRef:
kind: Task
params:
- name: name
value: git-clone
- name: bundle
value: quay.io/redhat-appstudio-tekton-catalog/task-git-clone:0.1@sha256:1f84973a21aabea38434b1f663abc4cb2d86565a9c7aae1f90decb43a8fa48eb
- name: kind
value: task
resolver: bundles
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: output
workspace: workspace-ppc64le
- name: basic-auth
workspace: git-auth
- name: prefetch-dependencies
params:
- name: input
Expand All @@ -203,10 +287,10 @@ spec:
workspaces:
- name: source
workspace: workspace
- name: build-container
- name: build-container-amd64
params:
- name: IMAGE
value: $(params.output-image)
value: $(params.output-image)-amd64
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
Expand All @@ -220,7 +304,7 @@ spec:
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
runAfter:
- prefetch-dependencies
- prefetch-dependencies
taskRef:
params:
- name: name
Expand All @@ -234,10 +318,153 @@ spec:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
- "true"
workspaces:
- name: source
workspace: workspace
- name: build-container-arm64
params:
- name: IMAGE
value: $(params.output-image)-arm64
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
value: $(params.path-context)
- name: HERMETIC
value: $(params.hermetic)
- name: PREFETCH_INPUT
value: $(params.prefetch-input)
- name: IMAGE_EXPIRES_AFTER
value: $(params.image-expires-after)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: PLATFORM
value: linux/arm64
runAfter:
- clone-repository-arm64
taskRef:
resolver: git
params:
- name: url
value: https://github.com/stuartwdouglas/build-definitions.git
- name: revision
value: multiarch
- name: pathInRepo
value: task/buildah-remote/0.1/buildah-remote.yaml
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: source
workspace: workspace
workspace: workspace-arm64
- name: build-container-s390x
params:
- name: IMAGE
value: $(params.output-image)-s390x
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
value: $(params.path-context)
- name: HERMETIC
value: $(params.hermetic)
- name: PREFETCH_INPUT
value: $(params.prefetch-input)
- name: IMAGE_EXPIRES_AFTER
value: $(params.image-expires-after)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: PLATFORM
value: linux/s390x
runAfter:
- clone-repository-s390x
taskRef:
resolver: git
params:
- name: url
value: https://github.com/stuartwdouglas/build-definitions.git
- name: revision
value: multiarch
- name: pathInRepo
value: task/buildah-remote/0.1/buildah-remote.yaml
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: source
workspace: workspace-s390x

- name: build-container-ppc64le
params:
- name: IMAGE
value: $(params.output-image)-ppc64le
- name: DOCKERFILE
value: $(params.dockerfile)
- name: CONTEXT
value: $(params.path-context)
- name: HERMETIC
value: $(params.hermetic)
- name: PREFETCH_INPUT
value: $(params.prefetch-input)
- name: IMAGE_EXPIRES_AFTER
value: $(params.image-expires-after)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: PLATFORM
value: linux/ppc64le
runAfter:
- clone-repository-ppc64le
taskRef:
resolver: git
params:
- name: url
value: https://github.com/stuartwdouglas/build-definitions.git
- name: revision
value: multiarch
- name: pathInRepo
value: task/buildah-remote/0.1/buildah-remote.yaml
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
workspaces:
- name: source
workspace: workspace-ppc64le
- name: build-container
params:
- name: IMAGE
value: $(params.output-image)
- name: COMMIT_SHA
value: $(tasks.clone-repository.results.commit)
- name: IMAGES
value:
- $(tasks.build-container-amd64.results.IMAGE_URL)@$(tasks.build-container-amd64.results.IMAGE_DIGEST)
- $(tasks.build-container-arm64.results.IMAGE_URL)@$(tasks.build-container-arm64.results.IMAGE_DIGEST)
- $(tasks.build-container-s390x.results.IMAGE_URL)@$(tasks.build-container-s390x.results.IMAGE_DIGEST)
- $(tasks.build-container-ppc64le.results.IMAGE_URL)@$(tasks.build-container-ppc64le.results.IMAGE_DIGEST)
runAfter:
- build-container-amd64
- build-container-arm64
- build-container-s390x
- build-container-ppc64le
taskRef:
resolver: git
params:
- name: url
value: https://github.com/stuartwdouglas/build-definitions.git
- name: revision
value: multiarch
- name: pathInRepo
value: task/build-image-manifest/0.1/build-image-manifest.yaml
when:
- input: $(tasks.init.results.build)
operator: in
values:
- "true"
- name: inspect-image
params:
- name: IMAGE_URL
Expand Down Expand Up @@ -266,7 +493,7 @@ spec:
- name: deprecated-base-image-check
params:
- name: BASE_IMAGES_DIGESTS
value: $(tasks.build-container.results.BASE_IMAGES_DIGESTS)
value: $(tasks.build-container-amd64.results.BASE_IMAGES_DIGESTS)
taskRef:
params:
- name: name
Expand Down Expand Up @@ -383,6 +610,39 @@ spec:
requests:
storage: 1Gi
status: {}
- name: workspace-arm64
volumeClaimTemplate:
metadata:
creationTimestamp: null
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
status: {}
- name: workspace-s390x
volumeClaimTemplate:
metadata:
creationTimestamp: null
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
status: {}
- name: workspace-ppc64le
volumeClaimTemplate:
metadata:
creationTimestamp: null
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
status: {}
- name: git-auth
secret:
secretName: '{{ git_auth_secret }}'
Expand Down