docker-perl/build.sh

20 lines
878 B
Bash
Executable file

#!/bin/bash
set -euo pipefail
for build in 5*; do
TAG=simcop2387/perl:$(echo $build | perl -pE 's/,/-/g')
LOCAL_TAG=registry.docker.home.simcop2387.info:443/simcop2387/perl:$(echo $build | perl -pE 's/,/-/g')
PLATFORMS=linux/amd64,linux/arm64
if [[ $build == *"quadmath"* ]]; then
# exclude arm64 from quadmath builds since it doesn't apply
PLATFORMS=linux/amd64
fi
echo building $TAG... $PLATFORMS
( cd $build;
docker buildx build --cache-from type=registry,ref=registry.docker.home.simcop2387.info:443/simcop2387/perl --cache-to type=registry,ref=registry.docker.home.simcop2387.info:443/simcop2387/perl,mode=max --platform=$PLATFORMS --progress=simple -t $TAG -t $LOCAL_TAG --push . 2>&1 && \
docker push $TAG && \
docker push $LOCAL_TAG
) | ts "$TAG [%H:%M:%S]" | tee build.$TAG.log || echo " Failed to build $TAG"
done