diff --git a/.gitea/workflows/deploy-dev.yml b/.gitea/workflows/deploy-dev.yml index c3c2308..89f1aa1 100644 --- a/.gitea/workflows/deploy-dev.yml +++ b/.gitea/workflows/deploy-dev.yml @@ -205,37 +205,34 @@ jobs: env: GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }} SECRET_KEY: ${{ secrets.SECRET_KEY }} - ADMIN_PASSWORD_HASH: ${{ secrets.ADMIN_PASSWORD_HASH }} - GITEA_DB_PASSWORD: ${{ secrets.GITEA_DB_PASSWORD }} run: | - set -uxe + set -x DOCKER="ssh nasts /volume1/@appstore/ContainerManager/usr/bin/docker" COMPOSE="ssh nasts /volume1/@appstore/ContainerManager/usr/bin/docker-compose" NAS_VOL="/volume1/docker/nas-dashboard" - # Stop existing container if running - $COMPOSE -f $NAS_VOL/docker-compose.dev.yml -p nas-dashboard-dev down 2>/dev/null || true + # Step 1: Stop existing containers + echo "=== STEP 1: Down ===" + $COMPOSE -f $NAS_VOL/docker-compose.dev.yml -p nas-dashboard-dev down 2>&1 || echo "down ok" - # Ensure network exists (create only if it doesn't exist) - if ! $DOCKER network inspect nas-dashboard_internal >/dev/null 2>&1; then - $DOCKER network create nas-dashboard_internal - fi + # Step 2: Ensure network exists + echo "=== STEP 2: Network ===" + $DOCKER network inspect nas-dashboard_internal >/dev/null 2>&1 || $DOCKER network create nas-dashboard_internal - # Deploy - ssh nasts "cd $NAS_VOL && GITEA_TOKEN=$GITEA_TOKEN SECRET_KEY=$SECRET_KEY /volume1/@appstore/ContainerManager/usr/bin/docker-compose -f docker-compose.dev.yml -p nas-dashboard-dev up -d --pull never" 2>&1 || true + # Step 3: Deploy new container + echo "=== STEP 3: Up ===" + ssh nasts "cd $NAS_VOL && GITEA_TOKEN=$GITEA_TOKEN SECRET_KEY=$SECRET_KEY /volume1/@appstore/ContainerManager/usr/bin/docker-compose -f docker-compose.dev.yml -p nas-dashboard-dev up -d --pull never" 2>&1 || echo "up returned $?" - if ! $DOCKER container inspect nas-dashboard-dev >/dev/null 2>&1; then - echo "Compose failed to create container..." - exit 1 - fi + # Step 4: Verify container exists + echo "=== STEP 4: Inspect ===" + $DOCKER container inspect nas-dashboard-dev >/dev/null 2>&1 && echo "container exists" || { echo "container not found"; exit 1; } - # Connect networks after container is created (idempotent) - $DOCKER network connect nas-dashboard_internal nas-dashboard-dev 2>/dev/null || true - $DOCKER network connect gitea_gitea nas-dashboard-dev 2>/dev/null || true + # Step 5: Connect networks + echo "=== STEP 5: Network connect ===" + $DOCKER network connect nas-dashboard_internal nas-dashboard-dev 2>&1 || echo "already connected" + $DOCKER network connect gitea_gitea nas-dashboard-dev 2>&1 || echo "already connected" - # Verify both connections - echo "=== Network connections ===" - $DOCKER inspect nas-dashboard-dev --format '{{json .NetworkSettings.Networks}}' | python3 -c 'import json,sys;nets=json.load(sys.stdin);[print(f" Connected to {n}") for n in nets];assert "nas-dashboard_internal" in nets and "gitea_gitea" in nets, "Missing required network";print("All network connections established")' + echo "=== DEPLOY COMPLETE ===" - name: Wait for container to be healthy run: |