#!/bin/bash # exit immediately on non-zero return code, including during a pipe stage or on # accessing an uninitialized variable and print commands before executing them set -euxo pipefail EVENT=$1 VERSION=${GITHUB_REF##*/} build_image() { local push build_args push=$1; shift 1; build_args="$@" docker buildx build \ --platform linux/amd64,linux/386,linux/arm/v6,linux/arm/v7,linux/arm64,linux/ppc64le \ --output type=image,push=$push \ --pull \ --no-cache \ --progress plain \ $build_args \ . } image_build_arguments() { cat< Dockerfile.edge image_build_arguments | while read image build_args ; do build_image $push -f Dockerfile.edge --tag $image:edge "$build_args" done rm -f Dockerfile.edge rm -f "$HOME/.docker/config.json" } main