Files
ai/bin/build-all

45 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# Build all container images
set -e
DIR="$(cd "$(dirname "$0")" && pwd)"
ROOT_DIR="$(cd "$DIR/.." && pwd)"
echo "Building all container images..."
echo
"$DIR/build" flink "$@"
"$DIR/build" relay "$@"
"$DIR/build" ingestor "$@"
"$DIR/build" web "$@"
# Build lifecycle-sidecar (Go binary, no protobuf sync needed)
echo "Building lifecycle-sidecar..."
cd "$ROOT_DIR/lifecycle-sidecar"
# Determine tag
if [ "$1" == "dev" ]; then
TAG="dev$(date +%Y%m%d%H%M%S)"
else
# Check for uncommitted changes
DIRTY="$(git status | grep 'Changes ' || true)"
if [ "$DIRTY" != "" ]; then
echo "lifecycle-sidecar has uncommitted changes."
echo "Use '$0 dev' to build a development-tagged version instead."
exit 1
fi
TAG="$(git log --oneline | head -1 | cut -d ' ' -f 1)"
fi
REMOTE=${REMOTE:-ghcr.io/dexorder}
docker build -t lifecycle-sidecar:latest -t lifecycle-sidecar:$TAG .
docker tag lifecycle-sidecar:$TAG $REMOTE/lifecycle-sidecar:$TAG
docker tag $REMOTE/lifecycle-sidecar:$TAG $REMOTE/lifecycle-sidecar:latest
echo "$(date)" built $REMOTE/lifecycle-sidecar:$TAG
echo
echo "All images built successfully!"