diff options
author | Christian Segundo | 2024-04-07 10:45:05 +0200 |
---|---|---|
committer | Christian Segundo | 2024-04-07 18:19:48 +0200 |
commit | 8206fecdb86f05d353ef25c9596cebca5c1d28fb (patch) | |
tree | 169f50213c94e8a558bf1c235871c764045f4338 /.scripts.d/40-publish.sh | |
parent | 3891426ce8deba513c5bcf1594987bdcfc837304 (diff) | |
download | jenkins-agent-docker-cli-8206fecdb86f05d353ef25c9596cebca5c1d28fb.tar.gz |
install buildx
Diffstat (limited to '.scripts.d/40-publish.sh')
-rw-r--r-- | .scripts.d/40-publish.sh | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/.scripts.d/40-publish.sh b/.scripts.d/40-publish.sh new file mode 100644 index 0000000..cec483a --- /dev/null +++ b/.scripts.d/40-publish.sh @@ -0,0 +1,41 @@ +#!/bin/bash +# vim: ai:ts=8:sw=8:noet +set -EeufCo pipefail +export SHELLOPTS # propagate set to children by default +IFS=$'\t\n' + +# check required commands are in place +command -v docker >/dev/null 2>&1 || { + echo 'please install docker-client' + exit 1 +} + +docker login --username "chn2guevara" \ + --password-stdin <<<"$DOCKERHUB_TOKEN" + +docker run --privileged --rm tonistiigi/binfmt --install arm64 +docker buildx create --use --name multi-arch-builder + +DOCKER_TAG="latest" +if [ "$GIT_BRANCH" != "master" ]; then + DOCKER_TAG="${GIT_BRANCH//\//-}" +fi + +if [ "$(git tag --contains)" = "" ]; then + docker buildx build \ + --platform linux/amd64,linux/arm64 \ + --no-cache \ + --pull \ + --push \ + --tag "chn2guevara/jenkins-agent-docker-cli:${DOCKER_TAG}" \ + . +else + docker buildx build \ + --platform linux/amd64,linux/arm64 \ + --no-cache \ + --pull \ + --push \ + --tag "chn2guevara/jenkins-agent-docker-cli:${DOCKER_TAG}" \ + --tag "chn2guevara/jenkins-agent-docker-cli:$(git tag --contains | head -1)" \ + . +fi |