#!/usr/bin/env bash set -euo pipefail APP_ID="${1:-}" if [ -z "$APP_ID" ]; then echo "Usage:" echo " ./deploy-app.sh " exit 1 fi BASE_DIR="/opt/appfactory" WORKSPACE_DIR="$HOME/workspace" APP_SOURCE_DIR="$WORKSPACE_DIR/$APP_ID" if [ ! -d "$APP_SOURCE_DIR" ]; then echo "Missing app source: $APP_SOURCE_DIR" exit 1 fi echo "Building Docker image..." docker build -t "$APP_ID:latest" "$APP_SOURCE_DIR" COMPOSE_FILE="$BASE_DIR/deploy/apps-compose.yml" mkdir -p "$BASE_DIR/deploy/generated" if [ ! -f "$COMPOSE_FILE" ]; then cat > "$COMPOSE_FILE" <> "$COMPOSE_FILE" <> "$BASE_DIR/gateway/Caddyfile" <> "$CATALOG_FILE" <