Gan, Jimmy
5e9fa2ba56
fix: add Docker socket mount to CI workflows
...
Deploy Dashboard (Dev) / deploy-dev (push) Has been cancelled
Run Tests / Backend Tests (push) Has been cancelled
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
- Add /var/run/docker.sock mount to deploy-dev and deploy workflows
- Fixes docker build hanging indefinitely in CI
- Docker commands need socket access to communicate with daemon
2026-04-03 23:14:54 +08:00
Gan, Jimmy
af5b4d8411
fix: use --no-recreate to avoid network issues, fallback to create if needed
Deploy Dashboard (Dev) / deploy-dev (push) Has been cancelled
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Backend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
2026-04-02 21:12:53 +08:00
Gan, Jimmy
f275e52843
fix: stop container before compose up to avoid network recreation issues
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 4m18s
Run Tests / Backend Tests (push) Failing after 16m28s
Run Tests / Frontend Tests (push) Failing after 16m26s
Run Tests / Test Summary (push) Failing after 17s
2026-04-02 10:29:31 +08:00
Gan, Jimmy
21d0cd9ff6
fix: simplify deploy to match production pattern - use idempotent docker compose up
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m32s
Run Tests / Backend Tests (push) Failing after 1m43s
Run Tests / Frontend Tests (push) Failing after 42s
Run Tests / Test Summary (push) Failing after 42s
2026-04-02 10:01:25 +08:00
Gan, Jimmy
e152de6fc8
fix: add --remove-orphans and remove force-recreate flag
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 2m4s
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Backend Tests (push) Has started running
Run Tests / Test Summary (push) Has been cancelled
2026-04-02 09:54:19 +08:00
Gan, Jimmy
b425613941
fix: use docker-compose down to clean up networks properly
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m24s
Run Tests / Backend Tests (push) Failing after 42s
Run Tests / Frontend Tests (push) Failing after 1m0s
Run Tests / Test Summary (push) Failing after 14s
2026-04-02 09:37:47 +08:00
Gan, Jimmy
d72b2acf02
fix: disconnect networks and force recreate container
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m19s
Run Tests / Test Summary (push) Has been cancelled
Run Tests / Backend Tests (push) Has started running
Run Tests / Frontend Tests (push) Has been cancelled
2026-04-02 09:30:15 +08:00
Gan, Jimmy
09fdf5fd62
fix: stop and remove existing container before deploy to avoid network conflict
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m24s
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
Run Tests / Backend Tests (push) Has started running
2026-04-02 09:24:19 +08:00
Gan, Jimmy
dba4880445
fix: set DOCKER_API_VERSION=1.43 for NAS daemon compatibility
Deploy Dashboard (Dev) / deploy-dev (push) Failing after 1m15s
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
Run Tests / Backend Tests (push) Has started running
2026-04-02 09:15:59 +08:00
Gan, Jimmy
7ad4095ad6
fix: add exit code validation to test workflow to properly fail on test failures
Run Tests / Backend Tests (push) Has started running
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
2026-03-31 19:03:53 +08:00
Gan, Jimmy
084148ed32
fix: add SECRET_KEY environment variable to test workflow
Run Tests / Backend Tests (push) Failing after 1m39s
Run Tests / Frontend Tests (push) Failing after 43s
Run Tests / Test Summary (push) Failing after 41s
2026-03-31 15:30:55 +08:00
Gan, Jimmy
51c4cd1a4e
test: disable coverage and add timeouts to identify slow/hanging tests
Run Tests / Backend Tests (push) Failing after 1m41s
Run Tests / Frontend Tests (push) Failing after 44s
Run Tests / Test Summary (push) Failing after 16m47s
2026-03-31 13:45:44 +08:00
Gan, Jimmy
c98db64f32
ci: add test output capture and display in workflow summary
Run Tests / Backend Tests (push) Failing after 6m37s
Run Tests / Frontend Tests (push) Failing after 1m6s
Run Tests / Test Summary (push) Failing after 16m48s
2026-03-31 11:07:46 +08:00
Gan, Jimmy
c538dff773
fix: use ubuntu-latest runner label for test workflow
Run Tests / Backend Tests (push) Failing after 9m1s
Run Tests / Frontend Tests (push) Failing after 40s
Run Tests / Test Summary (push) Failing after 6m24s
2026-03-30 12:40:02 +08:00
Gan, Jimmy
b1f0af75bb
ci: enable test workflow on dev branch
Run Tests / Backend Tests (push) Has been cancelled
Run Tests / Frontend Tests (push) Has been cancelled
Run Tests / Test Summary (push) Has been cancelled
2026-03-30 11:27:36 +08:00
Gan, Jimmy
8431920d26
feat: add comprehensive unit and integration testing infrastructure
...
Run Tests / Backend Tests (pull_request) Has been cancelled
Run Tests / Frontend Tests (pull_request) Has been cancelled
Run Tests / Test Summary (pull_request) Has been cancelled
- Backend: pytest with unit tests (auth, rbac, config) and integration tests (auth flow, docker, files)
- Frontend: vitest with unit tests (api client) and component tests (login)
- CI: Gitea Actions workflow for automated testing with coverage reports
- Documentation: TESTING.md guide with setup, usage, and best practices
- Coverage goals: 80%+ backend, 70%+ frontend
2026-03-30 11:11:39 +08:00
Gan, Jimmy
99b626eadc
fix: add 60s timeout to registry mirror pre-pull to prevent CI hang
2026-03-20 01:04:14 +08:00
Gan, Jimmy
61a3d0ae4b
fix: sync dashboard compose files during CI deploy
...
Deploy Dashboard (Dev) / deploy-dev (push) Successful in 7m55s
Ensure dashboard deploy workflows copy tracked compose files into /nas-dashboard before docker compose up, so new SSH host mounts/envs (like Mac terminal) actually reach runtime.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-06 08:43:01 +08:00
Gan, Jimmy
c49d34210d
fix: remove stale claude-dev container before deploy
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Successful in 1m58s
Delete any existing claude-dev container before compose up so name conflicts do not block CI deployment.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 02:11:52 +08:00
Gan, Jimmy
b384b2f462
fix: ensure claude-dev runtime directory exists before snapshot
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 1m45s
Create /claude-dev-runtime before writing previous-image.txt so post-build record step does not fail when the bind path is absent.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 02:05:52 +08:00
Gan, Jimmy
cb2a842ab6
fix: remove slow server2 preload from claude-dev deploy workflow
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 18m54s
Drop the server2 preload stage and rely on direct docker build pulls to avoid long-running preload stream stalls in CI.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 01:42:30 +08:00
Gan, Jimmy
a683321d92
fix: remove chmod on read-only mounted preload key
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 11m51s
Drop chmod on the read-only mounted server2 SSH key so preload can execute without failing the workflow before the SSH attempt.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 01:30:01 +08:00
Gan, Jimmy
d7b2cb3885
fix: mount SSH key for server2 preload in runner job
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 29s
Mount a read-only SSH key into the claude-dev deploy runner container and use it explicitly for server2 preload so the fast-path image transfer can authenticate.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 01:22:24 +08:00
Gan, Jimmy
8c23aabd97
fix: make claude-dev preload non-blocking in CI
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Has started running
Treat server2 preload as best-effort so missing SSH keys do not fail deployment; fall back to normal registry pull during image build.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 01:02:06 +08:00
Gan, Jimmy
88c378594e
fix: use explicit server2 SSH target in claude-dev preload
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 24s
Replace the runner-only host alias with an explicit SSH user@host so the preload step can resolve and stream the base image tar reliably.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 00:59:00 +08:00
Gan, Jimmy
19001edfbd
fix: speed up claude-dev base image availability
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Failing after 33s
Switch claude-dev to node:20-bookworm-slim and preload the base image from server2 in CI to avoid slow pulls on the NAS runner.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 00:56:02 +08:00
Gan, Jimmy
ce061c1977
fix: scope deploy triggers and cancel stale workflow runs
...
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Waiting to run
Deploy Dashboard (Dev) / deploy-dev (push) Successful in 2m9s
Limit workflow path triggers to each workflow file, add concurrency groups to cancel outdated runs, and checkout the exact triggering SHA for deterministic deploys.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-03 00:28:02 +08:00
Gan, Jimmy
755a0b6ae9
feat: add CI-gated claude-dev image package
...
Deploy Dashboard (Dev) / deploy-dev (push) Has been cancelled
Deploy Claude Dev (Dev) / deploy-claude-dev-dev (push) Has started running
Define claude-dev capabilities as a tested contract and deploy immutable tags only after smoke checks so daily tooling upgrades remain CI-first and rollback-safe.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-02 23:40:44 +08:00
Gan, Jimmy
20aa6f12a3
perf: add Docker layer caching to dev CI workflow
Deploy Dashboard (Dev) / deploy-dev (push) Successful in 53s
2026-03-01 18:07:19 +08:00
Gan, Jimmy
4b32929dcc
feat: watchtower tracking, dev environment, security logs page
...
Deploy Dashboard (Dev) / deploy-dev (push) Successful in 1m54s
- watchtower: docker-compose with label filtering, email notifications
- watchtower labels on navidrome, openclaw, immich services
- dev env: docker-compose.dev.yml (port 4001), deploy-dev.yml CI workflow
- dev.nas.jimmygan.com Caddy site block with Authelia forward_auth
- security page: backend router parsing Authelia/Caddy container logs
- security page: frontend with stats cards, timeline, top IPs, event log
- wired security route into App.svelte and Sidebar
2026-03-01 00:40:14 +08:00
Gan, Jimmy
f1e802e01b
CI: add build step to deploy workflow
...
- Clone from local Gitea instead of actions/checkout
- Build with legacy builder (DOCKER_BUILDKIT=0) for Docker mirror support
- Use npm China mirror (registry.npmmirror.com) in Dockerfile
- Combined npm install+build in single RUN step
- Removed stale proxy env vars
2026-02-25 21:14:00 +08:00
Gan, Jimmy
7b4c52f646
Fix CI: use --pull never instead of --no-pull
2026-02-21 11:16:07 +08:00
Gan, Jimmy
0c80e07735
Fix CI: remove checkout step that requires GitHub access
2026-02-21 11:14:04 +08:00
Gan, Jimmy
74a4fa1d4b
Fix CI: add --no-pull to avoid Docker Hub pull failure
2026-02-21 11:09:52 +08:00
Gan, Jimmy
a265c6ffb0
Use docker save/load for cross-build deploy from M1 to NAS
2026-02-21 11:05:00 +08:00
Gan, Jimmy
370417b37d
Switch to cross-build from M1 via Gitea container registry
2026-02-21 00:40:46 +08:00
Gan, Jimmy
7225615e2f
Enable Docker BuildKit for faster builds
2026-02-20 23:57:16 +08:00
Gan, Jimmy
5a94df7973
Revert to Github action checkout & add proxy variables
2026-02-20 23:52:34 +08:00
Gan, Jimmy
3fec3c4e4f
Fix checkout action mirror absolute url
2026-02-20 23:28:01 +08:00
Gan, Jimmy
162c5d486d
Add workflow path to trigger
2026-02-20 23:24:04 +08:00
Gan, Jimmy
fc13510fec
Fix action clone timeout by using gitea mirror
2026-02-20 22:29:32 +08:00
Gan, Jimmy
b2064726fd
Fix CI/CD: remove duplicate docker.sock mount
...
Runner already passes docker.sock to job containers.
Only mount the dashboard volume for deploy.
2026-02-19 10:18:03 +08:00
Gan, Jimmy
6c042b5e09
Fix CI/CD workflow: mount Docker socket into job container
...
- Add container volumes for Docker socket, binary, and dashboard path
- Update runner-config.yaml with valid_volumes whitelist
- Sync source files to NAS volume before rebuilding
- Only trigger on dashboard/** path changes
2026-02-19 10:14:24 +08:00
Gan, Jimmy
75c89b1ef9
Fix auth crashes + add CI/CD workflow
...
Deploy Dashboard / deploy (push) Failing after 6m59s
- Fix jose->pyjwt import mismatch
- Fix bcrypt->pbkdf2 password hashing
- Fix Sidebar logout prop (ReferenceError)
- Add .gitea/workflows/deploy.yml for automated deployment
2026-02-19 10:04:38 +08:00