Add s390x support to docker images (#1749)

* Add s390x support to docker images

1. add s390x support to docker images `executor`, `executor(slim)`,
   `executor(debug)` and `warmer`. Fixes #1462 and #1665.

2. Address the building issue of dependency `docker-credential-gcr`
   in Dockerfiles. This issue was introduced when recent commits
   in `docker-credential-gcr` removed the Makefile.

Signed-off-by: Kun-Lu <kun.lu@ibm.com>

* Add s390x support to all images except debug image

* Add s390x support to images.yaml

* Fix ld64.so.1 not found issue on s390x

* Add a comment for copying /lib from busybox container on s390x
This commit is contained in:
Kun Lu 2022-01-06 11:19:26 -05:00 committed by GitHub
parent ee2249b3d5
commit ccaa38d31f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 3 deletions

View File

@ -33,14 +33,14 @@ jobs:
include:
- image: executor
dockerfile: ./deploy/Dockerfile
platforms: linux/amd64,linux/arm64
platforms: linux/amd64,linux/arm64,linux/s390x
image-name: gcr.io/kaniko-project/executor
tag: ${{ github.sha }}
release-tag: latest
- image: executor-debug
dockerfile: ./deploy/Dockerfile_debug
platforms: linux/amd64,linux/arm64
platforms: linux/amd64,linux/arm64,linux/s390x
image-name: gcr.io/kaniko-project/executor
tag: ${{ github.sha }}-debug
release_tag: debug
@ -54,7 +54,7 @@ jobs:
- image: warmer
dockerfile: ./deploy/Dockerfile_warmer
platforms: linux/amd64,linux/arm64
platforms: linux/amd64,linux/arm64,linux/s390x
image-name: gcr.io/kaniko-project/warmer
tag: ${{ github.sha }}
release-tag: latest

View File

@ -57,6 +57,11 @@ COPY --from=0 /usr/local/bin/docker-credential-gcr /kaniko/docker-credential-gcr
COPY --from=0 /usr/local/bin/docker-credential-ecr-login /kaniko/docker-credential-ecr-login
COPY --from=0 /usr/local/bin/docker-credential-acr-env /kaniko/docker-credential-acr-env
COPY --from=busybox:1.32.0 /bin /busybox
# Since busybox needs some lib files which lie in /lib directory to run the executables on s390x,
# the below COPY command is added to address "ld64.so.1 not found" issue. This extra copy action will not
# happen on amd64 or arm64 platforms since /lib does not exist in amd64 or arm64 version of busybox container.
# Similar issues could be found in https://github.com/multiarch/qemu-user-static/issues/110#issuecomment-652951564.
COPY --from=busybox:1.32.0 /*lib /lib
# Declare /busybox as a volume to get it automatically in the path to ignore
VOLUME /busybox