Files
sailing-analytics/docker/makeImageForLatestRelease-on-sapmachine25
T

35 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
release_prefix="$1"
GITHUB_REPOSITORY="$2"
GITHUB_TOKEN="$3"
OWNER=${GITHUB_REPOSITORY%%/*}
OWNER_LOWER=$(echo "$OWNER" | tr '[:upper:]' '[:lower:]')
REPO=${GITHUB_REPOSITORY##*/}
REPO_LOWER=$(echo "$REPO" | tr '[:upper:]' '[:lower:]')
PACKAGE="$OWNER_LOWER/$REPO_LOWER"
GITROOT="`dirname $0`/.."
DOCKERDIR="${GITROOT}/docker"
DOCKERFILE="$DOCKERDIR/Dockerfile"
if [ "${release_prefix}" = "" ]; then
SET_LATEST=1
release_prefix="docker-25-"
fi
pushd "${DOCKERDIR}"
RELEASE_TAR_GZ_FILENAME=$( ${GITROOT}/configuration/github-download-release-assets.sh "${GITHUB_TOKEN}" "${release_prefix}" "${GITHUB_REPOSITORY}" )
if [ "${RELEASE_TAR_GZ_FILENAME}" = "" ]; then
echo "No release with prefix ${release_prefix} found" >&2
else
release=$( echo ${RELEASE_TAR_GZ_FILENAME} | sed -e 's/\.tar\.gz//' )
echo Release is ${release}
echo "Copying files from GITROOT $GITROOT into Docker workspace"
cp "$GITROOT/java/target/env.sh" "$DOCKERDIR"
cp "$GITROOT/java/target/start" "$DOCKERDIR"
cp "$GITROOT/java/target/configuration/JavaSE-11.profile" "$DOCKERDIR"
cd "$DOCKERDIR"
docker buildx create --name=container --driver=docker-container --use --bootstrap
docker buildx build --builder=container --platform=linux/amd64,linux/arm64 --build-arg RELEASE=${release} -t ghcr.io/${PACKAGE}:${release} --push -f Dockerfile_sapsailing_on_sapmachine25 .
echo "Cleaning up..."
rm start env.sh JavaSE-11.profile ${RELEASE_TAR_GZ_FILENAME} release-notes.txt
fi
popd