fix: revert to runs-on: ubuntu-latest (the working configuration)
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m31s
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
Run Tests / Backend Tests (push) Has been cancelled

The runner was always configured with ubuntu-latest label, not nas.
Using ubuntu-latest with Docker-in-Docker works because runner has
/volume1/docker/nas-dashboard in valid_volumes.

Also keep the network creation fix to prevent duplicates.
This commit is contained in:
Gan, Jimmy
2026-04-06 20:48:44 +08:00
parent 3e62abfc65
commit 6db672a56e
+6 -16
View File
@@ -12,17 +12,12 @@ concurrency:
jobs: jobs:
deploy-dev: deploy-dev:
runs-on: nas runs-on: ubuntu-latest
steps: steps:
- name: Checkout repository - name: Checkout repository
run: | uses: actions/checkout@v4
# Clone into a temp directory accessible by runner with:
WORK_DIR="/tmp/nas-tools-deploy-$$" ref: ${{ github.sha }}
rm -rf "$WORK_DIR"
git clone http://gitea:3000/jimmy/nas-tools.git "$WORK_DIR"
cd "$WORK_DIR"
git checkout ${{ github.sha }}
echo "WORK_DIR=$WORK_DIR" >> $GITHUB_ENV
- name: Warm mirror cache for base images - name: Warm mirror cache for base images
run: | run: |
set -u set -u
@@ -55,13 +50,12 @@ jobs:
- name: Build dev image - name: Build dev image
run: | run: |
cd $WORK_DIR
export DOCKER_API_VERSION=1.43 export DOCKER_API_VERSION=1.43
DOCKER_BUILDKIT=0 docker build --cache-from nas-dashboard-dev:latest -t nas-dashboard-dev:latest dashboard/ DOCKER_BUILDKIT=0 docker build --cache-from nas-dashboard-dev:latest -t nas-dashboard-dev:latest dashboard/
- name: Sync runtime compose file - name: Sync runtime compose file
run: | run: |
mkdir -p /volume1/docker/nas-dashboard mkdir -p /volume1/docker/nas-dashboard
cp $WORK_DIR/dashboard/docker-compose.dev.yml /volume1/docker/nas-dashboard/docker-compose.dev.yml cp dashboard/docker-compose.dev.yml /volume1/docker/nas-dashboard/docker-compose.dev.yml
- name: Deploy dev - name: Deploy dev
run: | run: |
set -euo pipefail set -euo pipefail
@@ -78,13 +72,9 @@ jobs:
fi fi
# Use a dedicated project name to avoid killing production (which is project 'nas-dashboard') # Use a dedicated project name to avoid killing production (which is project 'nas-dashboard')
# and deploy using the synced compose file. # and deploy using theSynced compose file.
docker compose -f docker-compose.dev.yml -p nas-dashboard-dev down --remove-orphans || true docker compose -f docker-compose.dev.yml -p nas-dashboard-dev down --remove-orphans || true
docker compose -f docker-compose.dev.yml -p nas-dashboard-dev up -d --build --pull never docker compose -f docker-compose.dev.yml -p nas-dashboard-dev up -d --build --pull never
# Connect to gitea_gitea network for database access (OPC_DB) # Connect to gitea_gitea network for database access (OPC_DB)
docker network connect gitea_gitea nas-dashboard-dev || true docker network connect gitea_gitea nas-dashboard-dev || true
- name: Cleanup
if: always()
run: |
rm -rf $WORK_DIR