diff --git a/scripts/deploy-app.sh b/scripts/deploy-app.sh new file mode 100755 index 0000000..351e19a --- /dev/null +++ b/scripts/deploy-app.sh @@ -0,0 +1,77 @@ +#!/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" <