45 lines
1.1 KiB
Bash
45 lines
1.1 KiB
Bash
#!/bin/bash
|
|
|
|
readonly SUFFIX="$1"
|
|
readonly BUILD_TTT="$(grep -qF -e '--skip-ttt' <<< "$@" && echo false || echo true)"
|
|
readonly PUSH="$(grep -qF -e '--push' <<< "$@" && echo true || echo false)"
|
|
readonly repository="${DOCKER_REPO:-jusito/docker-ttt}"
|
|
|
|
if [ "${DEBUGGING}" = "true" ]; then
|
|
set -o xtrace
|
|
else
|
|
DEBUGGING="false"
|
|
fi
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
|
|
function process() {
|
|
tag_prefix="$1"
|
|
target="$2"
|
|
cache_option="$(grep -qF -e '--no-cache' <<< "$@" && echo "--no-cache" || echo "")"
|
|
|
|
docker rmi "$repository:$tag_prefix${SUFFIX}" || true
|
|
docker build --target "$target" $cache_option -t "$repository:$tag_prefix${SUFFIX}" .
|
|
if "$PUSH"; then
|
|
docker push "$repository:$tag_prefix${SUFFIX}"
|
|
fi
|
|
}
|
|
|
|
echo "[testBuild][INFO] build"
|
|
|
|
process "lgsm_debian" "lgsm" --no-cache
|
|
process "gmod_debian" "gmod"
|
|
if "$BUILD_TTT"; then
|
|
process "gmod_ttt_debian" "TTT"
|
|
fi
|
|
|
|
docker rmi "$repository:latest${SUFFIX}" || true
|
|
docker tag "$repository:gmod_ttt_debian${SUFFIX}" "$repository:latest${SUFFIX}"
|
|
if "$PUSH"; then
|
|
docker push "$repository:latest${SUFFIX}"
|
|
fi
|
|
|
|
echo "[testBuild][INFO] build done!"
|