29 lines
913 B
Bash
Executable File
29 lines
913 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# This file simply wraps the docker build command to build an image that includes
|
|
# a cache.tar file with the result of "prepare.sh" inside of it. See cache.Dockerfile
|
|
# for the steps that are actually taken to do this.
|
|
|
|
set -e
|
|
|
|
SCRIPT_PATH="$(cd $(dirname "${BASH_SOURCE[0]}") && pwd)"
|
|
CONTAINER_IMAGE_REPOSITORY="$1"
|
|
BRANCH="${2:-"main"}"
|
|
|
|
if [ "${CONTAINER_IMAGE_REPOSITORY}" = "" ]; then
|
|
echo "Container repository not specified!"
|
|
exit 1
|
|
fi
|
|
|
|
TAG="branch-${BRANCH//\//-}"
|
|
echo "[$(date)] ${BRANCH} => ${TAG}"
|
|
cd "${SCRIPT_PATH}/../.."
|
|
|
|
echo "[$(date)] Starting image build and push..."
|
|
export DOCKER_BUILDKIT=1
|
|
docker buildx create --use --name vscode-dev-containers
|
|
docker run --privileged --rm tonistiigi/binfmt --install all
|
|
docker buildx build --push --platform linux/amd64,linux/arm64 -t ${CONTAINER_IMAGE_REPOSITORY}:"${TAG}" -f "${SCRIPT_PATH}/cache.Dockerfile" .
|
|
|
|
echo "[$(date)] Done!"
|