RESTORED: Single, minimal CI workflow
- Triggers on: push to main branch
- Runs on: docker runner (available)
- Does: Build → Tag → Push to registry
- Time: 5-10 minutes per build
Workflow design:
✅ ZERO third-party actions (no hidden timeouts)
✅ Direct docker commands only (reliable)
✅ Progress output visible
✅ Proper secret handling
✅ Clean error paths
✅ Works with imageUpdater
Usage:
1. Set secret in Forgejo: REGISTRY_PAT=<token>
2. Push to main
3. CI builds and pushes image
4. imageUpdater detects new version
5. K8s deployment auto-updates
Image pushed to:
- forgejo.riotpiao.com/rock/poimen-memory:latest
- forgejo.riotpiao.com/rock/poimen-memory:<short-SHA>
Manual fallback still available:
export REGISTRY_TOKEN='<token>'
./scripts/build-and-push.sh
No race conditions:
✅ ONE workflow file only (.forgejo/workflows/build.yaml)
✅ No .gitea/ directory (removed)
✅ No competing auto-triggers