- .dockerignore: exclude build/cache/docs to reduce build context (59 lines)
- Dockerfile: add aggressive cleanup (cache, registry, git) after cargo build
- Dockerfile: use --locked flag for reproducible builds
- build.yaml: add pre-build disk cleanup (docker + cargo cache)
- build.yaml: clean cargo before Docker build to free space
- build.yaml: show disk usage before/after for debugging
Fixes 'No space left on device' error during Docker build in runner
The .gitea/ workflows were outdated and caused conflicts:
- Used runs-on: rust, golang (non-existent runners)
- Complex docker:27-cli setup with TLS (fragile)
- Different secret variable names (FORGEJO_REGISTRY_TOKEN vs REGISTRY_PAT)
- No tests before build
.forgejo/workflows/build.yaml is the clean, working version:
- Simplified docker commands
- Proper runner: docker
- Tests run first
- Cleanup on failure
- No hanging processes