#!/usr/bin/env bash
set -euo pipefail
if [[ $# -lt 2 ]]; then
echo "Usage: $(basename "$0") <image_repo> <tag1> [tag2 ...]" >&2
exit 1
fi
IMAGE_REPO=$1
shift
TAGS=("$@")
DOCKERFILE=${DOCKERFILE:-docker/engine/ee.Dockerfile}
TARGET=${TARGET:-engine-full}
CONTEXT=${CONTEXT:-.}
echo "Building ${IMAGE_REPO} with tags: ${TAGS[*]} ..."
BUILD_TAG_ARGS=()
for tag in "${TAGS[@]}"; do
BUILD_TAG_ARGS+=("-t" "${IMAGE_REPO}:${tag}")
done
docker build -f "${DOCKERFILE}" --target "${TARGET}" \
--platform linux/x86_64 \
--build-arg BUILD_FRONTEND=true \
--build-arg VITE_FEATURE_FLAGS="${VITE_FEATURE_FLAGS:-}" \
--build-arg VITE_APP_TURNSTILE_SITE_KEY="${VITE_APP_TURNSTILE_SITE_KEY:-}" \
"${BUILD_TAG_ARGS[@]}" \
"${CONTEXT}"
echo "Pushing images..."
for tag in "${TAGS[@]}"; do
echo "Pushing ${IMAGE_REPO}:${tag}..."
docker push "${IMAGE_REPO}:${tag}"
done
echo "Done! Images built and pushed: ${TAGS[*]}"