From 32fd67241cba846eed07999ca4add88b79984f7c Mon Sep 17 00:00:00 2001 From: Flavius Lacatusu Date: Mon, 18 Jan 2021 17:51:29 +0100 Subject: [PATCH] Add docker buildx to support multi-platform builds for release process Signed-off-by: Flavius Lacatusu --- .github/workflows/release.yml | 4 ++++ make-release.sh | 11 +++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e8aafd6ea..95ebc665c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,6 +17,10 @@ jobs: - uses: actions/checkout@v2 with: fetch-depth: 0 + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 - name: Set up Python 3.6 uses: actions/setup-python@v2 with: diff --git a/make-release.sh b/make-release.sh index 24ad92ee4..e2ef9b3b3 100755 --- a/make-release.sh +++ b/make-release.sh @@ -26,6 +26,7 @@ init() { PREPARE_COMMUNITY_OPERATORS_UPDATE=false RELEASE_DIR=$(cd "$(dirname "$0")"; pwd) FORCE_UPDATE="" + BUILDX_PLATFORMS="linux/amd64,linux/ppc64le,linux/s390x" if [[ $# -lt 1 ]]; then usage; exit; fi @@ -156,13 +157,11 @@ releaseOperatorCode() { git add -A || true # add new generated CSV files in olm/ folder git commit -am "Update defaults tags to "$RELEASE --signoff fi - - echo "[INFO] releaseOperatorCode :: Build operator image" - docker build -t "quay.io/eclipse/che-operator:${RELEASE}" . - - echo "[INFO] releaseOperatorCode :: Push image to quay.io" + echo "[INFO] releaseOperatorCode :: Login to quay.io..." docker login quay.io -u "${QUAY_ECLIPSE_CHE_USERNAME}" -p "${QUAY_ECLIPSE_CHE_PASSWORD}" - docker push quay.io/eclipse/che-operator:$RELEASE + + echo "[INFO] releaseOperatorCode :: Build operator image in platforms: $BUILDX_PLATFORMS" + docker buildx build --platform "$BUILDX_PLATFORMS" --push -t "quay.io/eclipse/che-operator:${RELEASE}" . } updateNightlyOlmFiles() {