Gan, Jimmy
1646af914f
chore: remove dead routes (OpenClaw, CcConnect, InfoEngine, Docker, test.yml)
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 1m10s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 48s
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Main) / Backend Tests (push) Failing after 3m6s
Deploy Dashboard (Main) / Frontend Tests (push) Successful in 9s
Deploy Dashboard (Main) / Build Main Image (push) Failing after 9m11s
Deploy Dashboard (Main) / Deploy to Production (push) Has been skipped
2026-07-09 23:14:46 +08:00
Gan, Jimmy
636a2b02e6
perf(ci): push to local registry + SSH pipe (layers cacheable for future builds)
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m15s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 56s
Deploy Dashboard (Main) / Backend Tests (push) Successful in 2m40s
Deploy Dashboard (Main) / Frontend Tests (push) Successful in 5s
Deploy Dashboard (Main) / Build Main Image (push) Failing after 15s
Deploy Dashboard (Main) / Deploy to Production (push) Has been skipped
Deploy Dashboard (Dev) / Build Dev Image (push) Failing after 18s
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
2026-07-09 03:54:14 +08:00
Gan, Jimmy
91328ce6c9
fix(ci): add TRANSMISSION_USER/PASS secrets to deploy step
Deploy Dashboard (Main) / Backend Tests (push) Successful in 2m48s
Deploy Dashboard (Main) / Frontend Tests (push) Successful in 9s
Deploy Dashboard (Main) / Build Main Image (push) Successful in 1m36s
Deploy Dashboard (Main) / Deploy to Production (push) Successful in 53s
2026-07-09 02:52:49 +08:00
Gan, Jimmy
93a1264d31
fix(ci): change checkout URL to 127.0.0.1:3300 (NAS host network)
Deploy Dashboard (Main) / Backend Tests (push) Successful in 2m39s
Deploy Dashboard (Main) / Frontend Tests (push) Successful in 10s
Deploy Dashboard (Main) / Build Main Image (push) Successful in 1m33s
Deploy Dashboard (Main) / Deploy to Production (push) Failing after 7m57s
2026-07-09 02:33:27 +08:00
Gan, Jimmy
bd03784108
fix(ci): soft-fail frontend tests on main (same Vite issue as dev)
Deploy Dashboard (Main) / Backend Tests (push) Successful in 2m41s
Deploy Dashboard (Main) / Frontend Tests (push) Successful in 6s
Deploy Dashboard (Main) / Build Main Image (push) Failing after 9m40s
Deploy Dashboard (Main) / Deploy to Production (push) Has been cancelled
2026-07-08 23:34:03 +08:00
Gan, Jimmy
0f1844b046
fix(ci): add gzip compression to image transfer (slow VPS->NAS pipe)
Deploy Dashboard (Main) / Backend Tests (push) Successful in 2m38s
Deploy Dashboard (Main) / Build Main Image (push) Has been cancelled
Deploy Dashboard (Main) / Deploy to Production (push) Has been cancelled
Deploy Dashboard (Main) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m2s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 52s
Deploy Dashboard (Dev) / Build Dev Image (push) Successful in 12m46s
Deploy Dashboard (Dev) / Deploy to Dev (push) Successful in 59s
2026-07-08 23:31:24 +08:00
Gan, Jimmy
270e90cab5
fix(ci): change main backend-tests to vps runner with correct checkout URL
Deploy Dashboard (Main) / Backend Tests (push) Successful in 2m44s
Deploy Dashboard (Main) / Frontend Tests (push) Failing after 6s
Deploy Dashboard (Main) / Deploy to Production (push) Has been cancelled
Deploy Dashboard (Main) / Build Main Image (push) Has been cancelled
2026-07-08 22:59:14 +08:00
Gan, Jimmy
7b39dda0c8
fix(ci): remove needs dependency on build-image-main (bypass Gitea scheduler bug)
Deploy Dashboard (Main) / Frontend Tests (push) Failing after 6s
Deploy Dashboard (Main) / Backend Tests (push) Failing after 14s
Deploy Dashboard (Main) / Build Main Image (push) Failing after 7m35s
Deploy Dashboard (Main) / Deploy to Production (push) Has been skipped
2026-07-08 22:22:04 +08:00
Gan, Jimmy
e19098836c
fix(ci): try explicit runner labels for main build-image job
Deploy Dashboard (Main) / Frontend Tests (push) Failing after 5s
Deploy Dashboard (Main) / Backend Tests (push) Failing after 14s
Deploy Dashboard (Main) / Build Main Image (push) Has been skipped
Deploy Dashboard (Main) / Deploy to Production (push) Has been skipped
2026-07-08 22:13:50 +08:00
Gan, Jimmy
06c51b7edb
fix(ci): add SSH timeout opts to main build (same hang protection as dev)
Deploy Dashboard (Main) / Frontend Tests (push) Failing after 5s
Deploy Dashboard (Main) / Backend Tests (push) Failing after 23s
Deploy Dashboard (Main) / Build Main Image (push) Has been skipped
Deploy Dashboard (Main) / Deploy to Production (push) Has been skipped
2026-07-08 22:12:28 +08:00
Gan, Jimmy
12b1084853
fix(ci): use printf|ssh for smoke tests (heredoc breaks YAML block scalar)
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m32s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 1m9s
Deploy Dashboard (Dev) / Build Dev Image (push) Successful in 15m8s
Deploy Dashboard (Dev) / Deploy to Dev (push) Successful in 1m4s
2026-07-08 21:27:12 +08:00
Gan, Jimmy
c7cd75720e
fix(ci): add step markers to deploy for debugging
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m3s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 49s
Deploy Dashboard (Dev) / Build Dev Image (push) Successful in 1m17s
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 51s
2026-07-07 16:34:00 +08:00
Gan, Jimmy
aed0d792ef
fix(ci): add verbose tracing to deploy steps
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m4s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 46s
Deploy Dashboard (Dev) / Build Dev Image (push) Successful in 1m18s
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 25s
2026-07-07 16:27:00 +08:00
Gan, Jimmy
27cdf7a91e
fix(ci): replace scp with cat|ssh (NAS has no scp subsystem)
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m4s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 55s
Deploy Dashboard (Dev) / Build Dev Image (push) Successful in 1m28s
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 50s
2026-07-07 16:18:18 +08:00
Gan, Jimmy
b2d53cb242
fix(ci): use SSH-based deploy for dev (NAS paths unavailable on VPS runner)
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m6s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 47s
Deploy Dashboard (Dev) / Build Dev Image (push) Successful in 1m34s
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 3s
2026-07-07 15:59:57 +08:00
Gan, Jimmy
f39fb4c931
Merge branch 'main' into dev
...
Deploy Dashboard (Main) / Backend Tests (push) Failing after 32s
Deploy Dashboard (Main) / Build Main Image (push) Has been skipped
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m8s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 53s
Deploy Dashboard (Main) / Frontend Tests (push) Failing after 5s
Deploy Dashboard (Main) / Deploy to Production (push) Has been skipped
Deploy Dashboard (Dev) / Build Dev Image (push) Successful in 1m34s
Deploy Dashboard (Dev) / Deploy to Dev (push) Failing after 0s
# Conflicts:
# .gitea/workflows/deploy-dev.yml
# .gitea/workflows/deploy.yml
2026-07-07 15:50:38 +08:00
Claude CI Bot
5f750bf07c
fix(ci): use gitea:3000 for checkout — 172.21.0.1:3300 unreachable from runner
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Successful in 2m56s
2026-06-10 18:25:06 +00:00
Gan, Jimmy
b7388f9a43
fix(ci): use vps label without host suffix
Deploy Dashboard (Dev) / Frontend Tests (push) Failing after 11m57s
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 14m14s
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
2026-06-07 12:24:00 +08:00
Gan, Jimmy
3e0941fef0
fix(ci): remove concurrency cancel-in-progress to let runs complete
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 56s
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 13m19s
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
2026-06-07 12:20:23 +08:00
Gan, Jimmy
d17f5383ae
fix(ci): checkout dev branch explicitly via GITHUB_REF_NAME
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 1m23s
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 10m52s
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
2026-06-07 12:17:58 +08:00
Gan, Jimmy
ce0a800087
fix(ci): match runner label vps:host, fix pytest timeout flag
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m16s
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Deploy Dashboard (Dev) / Build Dev Image (push) Has been cancelled
2026-06-07 12:08:16 +08:00
Gan, Jimmy
98510cb707
fix(ci): remove --timeout flag from pytest (not compatible with installed version)
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m27s
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Build Dev Image (push) Has been cancelled
2026-06-07 12:04:29 +08:00
Gan, Jimmy
5c5ae99e79
fix(ci): change deploy job to vps runner, route Docker commands via ssh nasts
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 1m20s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 1m1s
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Deploy Dashboard (Dev) / Build Dev Image (push) Has been cancelled
2026-06-07 11:57:46 +08:00
Gan, Jimmy
b52986fed5
fix(ci): recreate venv after cache restore to fix absolute symlinks
...
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 51s
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 13m39s
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
Running python3 -m venv venv over an existing cached venv recreates
the absolute symlinks and pyvenv.cfg paths so Python resolves to
the current system's python3 binary. Without this, cp -a preserves
stale symlinks from the cache source, causing venv/bin/python to
resolve to /usr/bin/python3 (system, not venv) and pytest not found.
Also switch validation to use python3 to match Ubuntu 24.04 convention.
2026-06-04 23:52:40 +08:00
Gan, Jimmy
c041b0e7ec
fix(ci): use python3 instead of python - VPS Ubuntu 24.04 has no python symlink
Deploy Dashboard (Dev) / Frontend Tests (push) Failing after 12m44s
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 13m57s
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
2026-06-04 20:23:57 +08:00
Gan, Jimmy
6672999757
fix(ci): validate venv cache by testing pytest, use python -m pytest
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 17s
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
2026-06-04 20:20:30 +08:00
Gan, Jimmy
12a015e915
fix(ci): move all test jobs to VPS runner - NAS HDD too slow
...
Deploy Dashboard (Dev) / Frontend Tests (push) Failing after 13m0s
Deploy Dashboard (Dev) / Backend Tests (push) Failing after 14m11s
Deploy Dashboard (Dev) / Build Dev Image (push) Has been skipped
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
NAS is using 4.7GB swap causing tests to hang in D state for 20+ min. VPS has SSD and plenty of RAM - tests complete in ~1-2 min there.
2026-06-04 18:17:18 +08:00
Gan, Jimmy
3057fc270b
fix(ci): move all test jobs to VPS runner - NAS HDD too slow
...
NAS is using 4.7GB swap causing tests to hang in D state for 20+ min. VPS has SSD and plenty of RAM - tests complete in ~1-2 min there.
2026-06-04 18:16:36 +08:00
Gan, Jimmy
e3f6a2c32e
Revert "fix(ci): use Docker bridge gateway IP for checkout in dev CI"
...
This reverts commit 0ee8d6cdab .
2026-06-04 18:07:50 +08:00
Gan, Jimmy
c4e9608e9d
fix(ci): use Docker bridge gateway IP for checkout in dev CI
...
Deploy Dashboard (Dev) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Dev) / Build Dev Image (push) Has been cancelled
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been cancelled
Deploy Dashboard (Dev) / Backend Tests (push) Has been cancelled
Ubuntu-latest runner containers on NAS dont have the gitea_gitea network, so http://gitea:3000 is unreachable. Use 172.21.0.1:3300 (Docker bridge gateway) instead.
2026-06-04 17:58:50 +08:00
Gan, Jimmy
0ee8d6cdab
fix(ci): use Docker bridge gateway IP for checkout in dev CI
...
Ubuntu-latest runner containers on NAS dont have the gitea_gitea network, so http://gitea:3000 is unreachable. Use 172.21.0.1:3300 (Docker bridge gateway) instead.
2026-06-04 17:58:38 +08:00
Gan, Jimmy
ab44c2956e
fix(ci): remove --cache-from flag - Podman caches layers automatically
Deploy Dashboard (Main) / Frontend Tests (push) Successful in 50s
Deploy Dashboard (Main) / Backend Tests (push) Failing after 23m28s
Deploy Dashboard (Main) / Build Docker Image (push) Has been skipped
Deploy Dashboard (Main) / Deploy to Production (push) Failing after 14m58s
2026-06-04 17:52:26 +08:00
Gan, Jimmy
aa08b4c970
feat(ci): build dashboard dev images on VPS (SSD) instead of NAS HDD
...
Deploy Dashboard (Dev) / Backend Tests (push) Successful in 17m47s
Deploy Dashboard (Dev) / Frontend Tests (push) Successful in 44s
Deploy Dashboard (Dev) / Build Dev Image (push) Failing after 26m26s
Deploy Dashboard (Dev) / Deploy to Dev (push) Has been skipped
Add build-image-dev job (runs-on: vps) - builds with Podman on server2,
pipes the finished image to NAS via SSH, retags from localhost/ prefix.
Deploy job now depends on build-image-dev instead of backend-tests.
NAS HDD I/O was the bottleneck for Docker builds. VPS has SSD and
matches NAS x86_64 architecture perfectly.
2026-06-04 17:51:41 +08:00
Gan, Jimmy
3c5ec3cdd2
feat(ci): build dashboard images on VPS (SSD) instead of NAS HDD
...
Deploy Dashboard (Main) / Backend Tests (push) Has been cancelled
Deploy Dashboard (Main) / Build Docker Image (push) Has been cancelled
Deploy Dashboard (Main) / Deploy to Production (push) Has been cancelled
Deploy Dashboard (Main) / Frontend Tests (push) Has been cancelled
- Add build-image job (runs-on: vps) for deploy.yml (main) - builds with
Podman on server2, pipes finished image to NAS via SSH, retags
- Add build-image-dev job (runs-on: vps) for deploy-dev.yml (dev) - same
pattern for dev images
- Remove build + base image pre-warm from NAS-side deploy jobs (image is
now pre-loaded by the build job)
- deploy job condition: always() && build-image succeeded (so frontend
test failure doesn't block deployment, but build failure does)
NAS HDD I/O was the bottleneck. VPS has SSD and same x86_64 arch.
2026-06-04 17:49:43 +08:00
Gan, Jimmy
03b515aa1d
fix(ci): switch tests from VPS host runner to NAS ubuntu-latest
...
Deploy Dashboard (Main) / Frontend Tests (push) Successful in 54s
Deploy Dashboard (Main) / Backend Tests (push) Successful in 14m32s
Deploy Dashboard (Main) / Deploy to Production (push) Failing after 15m6s
The VPS runner's host executor has a bug where completion callbacks
are silently dropped, causing jobs to appear stuck. Switched backend
and frontend tests to the NAS runner which correctly reports status.
Also updated checkout URL to use Docker bridge gateway 172.21.0.1:3300.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 11:42:16 +08:00
Gan, Jimmy
bd9cb67b14
fix(ci): replace python3 with sed/grep in deploy step containers
...
Deploy Dashboard (Main) / Deploy to Production (push) Has been cancelled
Deploy Dashboard (Main) / Backend Tests (push) Has been cancelled
Deploy Dashboard (Main) / Frontend Tests (push) Has been cancelled
The nas runner's deploy container lacks python3. Replaced:
- compose networks stripping: python3 -> sed
- network verification: python3 -> grep
- Removed broken --dns and --add-host options from deploy container
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 11:22:41 +08:00
Gan, Jimmy
56fd761618
Restore venv activation in test step, clear VPS cache
...
Cached venv has broken internal paths even when using venv/bin/python
directly. Clear caches and use . venv/bin/activate + python -m pytest
which correctly sets VIRTUAL_ENV for module resolution.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 11:07:23 +08:00
Gan, Jimmy
3989e281c0
fix(ci): use explicit venv/bin/python instead of activate+python3
...
Deploy Dashboard (Main) / Deploy to Production (push) Has been cancelled
Deploy Dashboard (Main) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Main) / Backend Tests (push) Has been cancelled
activate doesn't reliably shadow system python3 on the VPS runner.
Using the explicit venv path matches what the cache validation check
already uses.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 10:59:55 +08:00
Gan, Jimmy
90546b6c9a
Use python3 not python in pytest command
...
VPS host has python3 (not python) available. Fixes "python: command
not found" error from previous commit.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 10:39:02 +08:00
Gan, Jimmy
f2fa2daaa8
fix(ci): create default .env in CI if missing before compose validate
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Has been cancelled
The CI container may not have /volume1/docker/claude-dev/.env mounted,
causing 'docker compose config' to fail.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 10:36:50 +08:00
Gan, Jimmy
00364114d5
Use python -m pytest instead of pytest binary in CI
...
Venv symlinks break when cache is used across different environments
(VPS host vs NAS Docker). python -m pytest is resilient because it
loads pytest as a module, not via a shebang-based script.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 10:00:24 +08:00
Gan, Jimmy
e3ac6344f6
fix(ci): use Docker bridge gateway IP 172.21.0.1:3300 for checkout
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 1m4s
host.docker.internal not resolving in act containers on Synology Docker.
The gateway IP 172.21.0.1 routes to the host where Gitea is now
bound to 0.0.0.0:3300.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 10:00:12 +08:00
Gan, Jimmy
92c1f29843
Merge main into dev: resolve CI checkout URL conflict
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 25s
Use host.docker.internal:3300 with ubuntu-latest runner.
Gitea port now bound to 0.0.0.0:3300 so Docker containers
can reach it.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 09:58:23 +08:00
Gan, Jimmy
85ca387877
fix(ci): use host.docker.internal:3300 for checkout after Gitea port fix
...
Changed Gitea HTTP port binding from 127.0.0.1:3300 to 0.0.0.0:3300
so Docker containers can reach Gitea via host.docker.internal.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 09:53:07 +08:00
Gan, Jimmy
bb9a4c3977
Create /nas-dashboard directory before syncing compose file
...
Docker volume mounts may not auto-create mount points inside the
job container. Use mkdir -p to ensure the target directory exists
before copying files.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 09:50:36 +08:00
Gan, Jimmy
761f5f562b
fix(ci): use nas:host runner with localhost:3300 for claude-dev CI
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Has been cancelled
The act Docker containers on the NAS runner cannot reach Gitea
on the gitea_gitea network despite the runner config. Switching
to the 'nas' runner label which uses host mode — jobs run directly
on the NAS host where localhost:3300 reaches Gitea.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 09:49:30 +08:00
Gan, Jimmy
10e48461d4
fix(ci): use Gitea container IP for checkout in claude-dev workflow
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 16m58s
Replaces 'gitea:3000' with '172.21.0.4:3000' to bypass DNS
resolution issues in act job containers. Also removed --dns
override from runner-config.yaml which was breaking Docker's
embedded DNS and container name resolution.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-03 11:52:34 +08:00
Gan, Jimmy
d29c2c3a13
Validate cached venv by testing pytest, not just python binary
...
The cached venv's python binary may work but tool symlinks (pytest, etc.)
break when restored in a different environment. Test pytest specifically
to catch this.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-03 11:50:31 +08:00
Gan, Jimmy
951d68f022
Validate cached venv before use (test python binary works)
...
Deploy Dashboard (Main) / Frontend Tests (push) Has been cancelled
Deploy Dashboard (Main) / Deploy to Production (push) Has been cancelled
Deploy Dashboard (Main) / Backend Tests (push) Has been cancelled
Cached venvs from NAS Docker containers have broken symlinks when
restored on the VPS host, causing "pytest: command not found".
Add a functional check that venv/bin/python runs before accepting
the cache as valid.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-03 11:42:24 +08:00
Gan, Jimmy
6ed875ae81
Move test jobs to VPS runner, keep deploy on NAS
...
Backend and frontend tests now run on `runs-on: vps` (server2 at
158.101.140.85, host mode) with checkout via Tailscale IP. Deploy
job stays on `runs-on: nas` with gitea_gitea network for Docker
socket access. This eliminates the HDD bottleneck and Docker
network/DNS issues that plagued the all-NAS pipeline.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-03 11:09:38 +08:00