@@ -114,6 +114,17 @@ spec:
114114 - name : extra-labels
115115 type : array
116116 description : Additional labels to put on the built containers.
117+ - default :
118+ - linux-c2xlarge/amd64
119+ - linux-c2xlarge/arm64
120+ - linux/ppc64le
121+ - linux/s390x
122+ description : >
123+ List of platforms to build the container images for. The available
124+ set of values is determined by the configuration of the multi-platform-controller
125+ on the cluster: https://konflux.pages.redhat.com/docs/users/getting-started/multi-platform-builds.html
126+ name : build-platforms
127+ type : array
117128 results :
118129 - description : " "
119130 name : IMAGE_URL
@@ -239,148 +250,17 @@ spec:
239250 workspaces :
240251 - name : git-basic-auth
241252 workspace : git-auth
242- - name : build-container-amd64
243- params :
244- - name : IMAGE
245- value : $(params.output-image-repo):$(tasks.determine-image-tag.results.IMAGE_TAG)-amd64
246- - name : DOCKERFILE
247- value : $(params.dockerfile)
248- - name : CONTEXT
249- value : $(params.path-context)
250- - name : HERMETIC
251- value : $(params.hermetic)
252- - name : PREFETCH_INPUT
253- value : $(params.prefetch-input)
254- - name : IMAGE_EXPIRES_AFTER
255- value : $(tasks.determine-image-expiration.results.IMAGE_EXPIRES_AFTER)
256- - name : COMMIT_SHA
257- value : $(tasks.clone-repository.results.commit)
258- - name : TARGET_STAGE
259- value : $(params.build-target-stage)
260- - name : BUILD_ARGS
261- value :
262- - COLLECTOR_TAG=$(tasks.determine-image-tag.results.IMAGE_TAG)
263- - name : SOURCE_ARTIFACT
264- value : $(tasks.prefetch-dependencies.results.SOURCE_ARTIFACT)
265- - name : CACHI2_ARTIFACT
266- value : $(tasks.prefetch-dependencies.results.CACHI2_ARTIFACT)
267- - name : BUILDAH_FORMAT
268- value : $(params.buildah-format)
269- - name : LABELS
270- value : ["$(params.extra-labels[*])"]
271- - name : BUILD_TIMESTAMP
272- value : " $(tasks.clone-repository.results.commit-timestamp)"
273- taskRef :
253+ - name : build-images
254+ matrix :
274255 params :
275- - name : name
276- value : buildah-oci-ta
277- - name : bundle
278- value : quay.io/konflux-ci/tekton-catalog/task-buildah-oci-ta:0.6@sha256:80c6d4217aab2344511e4cf18ae7570878e411b1c40e5369a26263cf4adcef30
279- - name : kind
280- value : task
281- resolver : bundles
282- when :
283- - input : $(tasks.init.results.build)
284- operator : in
285- values : ["true"]
286- - name : build-container-s390x
256+ - name : PLATFORM
257+ value :
258+ - $(params.build-platforms)
287259 params :
288260 - name : IMAGE
289- value : $(params.output-image-repo):$(tasks.determine-image-tag.results.IMAGE_TAG)-s390x
290- - name : DOCKERFILE
291- value : $(params.dockerfile)
292- - name : CONTEXT
293- value : $(params.path-context)
294- - name : HERMETIC
295- value : $(params.hermetic)
296- - name : PREFETCH_INPUT
297- value : $(params.prefetch-input)
298- - name : IMAGE_EXPIRES_AFTER
299- value : $(tasks.determine-image-expiration.results.IMAGE_EXPIRES_AFTER)
300- - name : COMMIT_SHA
301- value : $(tasks.clone-repository.results.commit)
302- - name : TARGET_STAGE
303- value : $(params.build-target-stage)
304- - name : BUILD_ARGS
305- value :
306- - COLLECTOR_TAG=$(tasks.determine-image-tag.results.IMAGE_TAG)
307- - name : SOURCE_ARTIFACT
308- value : $(tasks.prefetch-dependencies.results.SOURCE_ARTIFACT)
309- - name : CACHI2_ARTIFACT
310- value : $(tasks.prefetch-dependencies.results.CACHI2_ARTIFACT)
311- - name : PLATFORM
312- value : linux/s390x
313- - name : BUILDAH_FORMAT
314- value : $(params.buildah-format)
315- - name : LABELS
316- value : ["$(params.extra-labels[*])"]
317- - name : BUILD_TIMESTAMP
318- value : " $(tasks.clone-repository.results.commit-timestamp)"
319- taskRef :
320- params :
321- - name : name
322- value : buildah-remote-oci-ta
323- - name : bundle
324- value : quay.io/konflux-ci/tekton-catalog/task-buildah-remote-oci-ta:0.6@sha256:09a9f4bffb30192487e03e6563ca65a209a41b92f18bd9f491763794d7cc0efe
325- - name : kind
326- value : task
327- resolver : bundles
328- when :
329- - input : $(tasks.init.results.build)
330- operator : in
331- values : ["true"]
332- timeout : 1h30m0s
333- - name : build-container-ppc64le
334- params :
335- - name : IMAGE
336- value : $(params.output-image-repo):$(tasks.determine-image-tag.results.IMAGE_TAG)-ppc64le
337- - name : DOCKERFILE
338- value : $(params.dockerfile)
339- - name : CONTEXT
340- value : $(params.path-context)
341- - name : HERMETIC
342- value : $(params.hermetic)
343- - name : PREFETCH_INPUT
344- value : $(params.prefetch-input)
345- - name : IMAGE_EXPIRES_AFTER
346- value : $(tasks.determine-image-expiration.results.IMAGE_EXPIRES_AFTER)
347- - name : COMMIT_SHA
348- value : $(tasks.clone-repository.results.commit)
349- - name : TARGET_STAGE
350- value : $(params.build-target-stage)
351- - name : BUILD_ARGS
352- value :
353- - COLLECTOR_TAG=$(tasks.determine-image-tag.results.IMAGE_TAG)
354- - name : SOURCE_ARTIFACT
355- value : $(tasks.prefetch-dependencies.results.SOURCE_ARTIFACT)
356- - name : CACHI2_ARTIFACT
357- value : $(tasks.prefetch-dependencies.results.CACHI2_ARTIFACT)
358- - name : PLATFORM
359- value : linux/ppc64le
360- - name : BUILDAH_FORMAT
361- value : $(params.buildah-format)
362- - name : LABELS
363- value : ["$(params.extra-labels[*])"]
364- - name : BUILD_TIMESTAMP
365- value : " $(tasks.clone-repository.results.commit-timestamp)"
366- taskRef :
367- params :
368- - name : name
369- value : buildah-remote-oci-ta
370- - name : bundle
371- value : quay.io/konflux-ci/tekton-catalog/task-buildah-remote-oci-ta:0.6@sha256:09a9f4bffb30192487e03e6563ca65a209a41b92f18bd9f491763794d7cc0efe
372- - name : kind
373- value : task
374- resolver : bundles
375- when :
376- - input : $(tasks.init.results.build)
377- operator : in
378- values : ["true"]
379- timeout : 1h30m0s
380- - name : build-container-arm64
381- params :
382- - name : IMAGE
383- value : $(params.output-image-repo):$(tasks.determine-image-tag.results.IMAGE_TAG)-arm64
261+ value : $(params.output-image-repo):$(tasks.determine-image-tag.results.IMAGE_TAG)
262+ - name : IMAGE_APPEND_PLATFORM
263+ value : " true"
384264 - name : DOCKERFILE
385265 value : $(params.dockerfile)
386266 - name : CONTEXT
@@ -402,8 +282,6 @@ spec:
402282 value : $(tasks.prefetch-dependencies.results.SOURCE_ARTIFACT)
403283 - name : CACHI2_ARTIFACT
404284 value : $(tasks.prefetch-dependencies.results.CACHI2_ARTIFACT)
405- - name : PLATFORM
406- value : linux-c2xlarge/arm64
407285 - name : BUILDAH_FORMAT
408286 value : $(params.buildah-format)
409287 - name : LABELS
@@ -432,14 +310,12 @@ spec:
432310 value : $(tasks.clone-repository.results.commit)
433311 - name : IMAGES
434312 value :
435- - $(tasks.build-container-amd64.results.IMAGE_REF)
436- - $(tasks.build-container-s390x.results.IMAGE_REF)
437- - $(tasks.build-container-ppc64le.results.IMAGE_REF)
438- - $(tasks.build-container-arm64.results.IMAGE_REF)
313+ - $(tasks.build-images.results.IMAGE_REF[*])
439314 - name : IMAGE_EXPIRES_AFTER
440315 value : $(tasks.determine-image-expiration.results.IMAGE_EXPIRES_AFTER)
441316 - name : BUILDAH_FORMAT
442317 value : $(params.buildah-format)
318+ runAfter : [ build-images ]
443319 taskRef :
444320 params :
445321 - name : name
@@ -521,6 +397,11 @@ spec:
521397 operator : in
522398 values : ["false"]
523399 - name : clair-scan
400+ matrix :
401+ params :
402+ - name : image-platform
403+ value :
404+ - $(params.build-platforms)
524405 params :
525406 - name : image-digest
526407 value : $(tasks.build-image-index.results.IMAGE_DIGEST)
@@ -540,6 +421,11 @@ spec:
540421 operator : in
541422 values : ["false"]
542423 - name : ecosystem-cert-preflight-checks
424+ matrix :
425+ params :
426+ - name : platform
427+ value :
428+ - $(params.build-platforms)
543429 params :
544430 - name : image-url
545431 value : $(tasks.build-image-index.results.IMAGE_URL)
@@ -626,6 +512,11 @@ spec:
626512 operator : in
627513 values : ["false"]
628514 - name : clamav-scan
515+ matrix :
516+ params :
517+ - name : image-arch
518+ value :
519+ - $(params.build-platforms)
629520 params :
630521 - name : image-digest
631522 value : $(tasks.build-image-index.results.IMAGE_DIGEST)
0 commit comments