From 066c69f9b47d6cc5adb6e64d07e96c9a04a6c56b Mon Sep 17 00:00:00 2001 From: Jiri Uhlir Date: Wed, 27 May 2026 09:08:38 +0200 Subject: [PATCH] Restore stable deploy script --- scripts/deploy-app.sh | 50 ++++++++++++++++++++++++++++++++----------- 1 file changed, 38 insertions(+), 12 deletions(-) diff --git a/scripts/deploy-app.sh b/scripts/deploy-app.sh index 5197813..d3e3c1c 100755 --- a/scripts/deploy-app.sh +++ b/scripts/deploy-app.sh @@ -9,22 +9,44 @@ if [ -z "$APP_ID" ]; then exit 1 fi -BASE_DIR="/opt/appfactory" -WORKSPACE_DIR="/home/jiri/workspace" +CONFIG_FILE="/opt/appfactory/config/appfactory.env" + +if [ -f "$CONFIG_FILE" ]; then + source "$CONFIG_FILE" +fi + +APPFACTORY_DIR="${APPFACTORY_DIR:-/opt/appfactory}" +WORKSPACE_DIR="${WORKSPACE_DIR:-/home/jiri/workspace}" APP_SOURCE_DIR="$WORKSPACE_DIR/$APP_ID" -CATALOG_FILE="$BASE_DIR/apps/catalog.yml" +CATALOG_FILE="$APPFACTORY_DIR/apps/catalog.yml" +TOOLS_DIR="$WORKSPACE_DIR/appfactory-tools" 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" +if [ ! -f "$APP_SOURCE_DIR/Dockerfile" ]; then + echo "Missing Dockerfile in: $APP_SOURCE_DIR" + exit 1 +fi -if ! grep -q "^- id: NEVER_MATCH" "$CATALOG_FILE" 2>/dev/null; then - true +echo "Updating source code..." +cd "$APP_SOURCE_DIR" + +if [ -d ".git" ]; then + git fetch origin main + git reset --hard origin/main +else + echo "WARNING: $APP_SOURCE_DIR is not a git repository" +fi + +echo "Building Docker image..." +docker build --pull --no-cache -t "$APP_ID:latest" "$APP_SOURCE_DIR" + +if [ ! -f "$CATALOG_FILE" ]; then + echo "apps:" > "$CATALOG_FILE" fi if ! grep -q "id: $APP_ID" "$CATALOG_FILE"; then @@ -41,14 +63,18 @@ cat >> "$CATALOG_FILE" <