Restore stable deploy script
This commit is contained in:
+38
-12
@@ -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" <<EOF_APP
|
||||
EOF_APP
|
||||
fi
|
||||
|
||||
/home/jiri/workspace/appfactory-tools/scripts/generate-apps-compose.sh
|
||||
/home/jiri/workspace/appfactory-tools/scripts/generate-caddyfile.sh
|
||||
/home/jiri/workspace/appfactory-tools/scripts/generate-apps-page.sh
|
||||
echo "Regenerating compose, Caddyfile and apps page..."
|
||||
|
||||
"$TOOLS_DIR/scripts/generate-apps-compose.sh"
|
||||
"$TOOLS_DIR/scripts/generate-caddyfile.sh"
|
||||
"$TOOLS_DIR/scripts/generate-apps-page.sh"
|
||||
|
||||
echo "Starting app container..."
|
||||
cd "$APPFACTORY_DIR/deploy"
|
||||
|
||||
cd "$BASE_DIR/deploy"
|
||||
docker compose -f docker-compose.yml -f apps-compose.yml up -d --force-recreate "$APP_ID"
|
||||
|
||||
echo ""
|
||||
echo "DONE"
|
||||
echo "Open:"
|
||||
echo "http://192.168.66.130/apps/$APP_ID/docs"
|
||||
echo "${APPFACTORY_PUBLIC_URL:-http://192.168.66.130}/apps/$APP_ID/docs"
|
||||
|
||||
Reference in New Issue
Block a user