ci: reserve runner for releases + push image/release over tailscale (not Cloudflare) #40
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "ci/reserve-runner-for-releases"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Two CI changes (both touch
docker.yml):1. Reserve the runner for releases
The
imagejob no longer runs on every push to master — only onv*tags andworkflow_dispatch(manual). Image tags by trigger: stable tag →:vX.Y.Z+:latest; prerelease (-rc) →:vX.Y.Zonly; manual →:edge. So:latesttracks the latest stable release. The tag-onlypackages/release job is unchanged.2. Push over tailscale, not Cloudflare (fixes the failing release build)
The Cloudflare-fronted
nether.codespath was failing the registry blob push mid-upload (502/ connection reset), killing the image job and blocking the v0.2.2 release. The runner now pushes/pulls the image and uploads release assets over the tailnet at100.64.0.13:3000, fully bypassing the edge. External users stilldocker pull nether.codes/dark/nether-voicebridge:...(Forgejo stores by owner/image regardless of push host; pulls through CF are fine).Requires (runner side, done):
100.64.0.13:3000in the runner Docker daemon'sinsecure-registries. buildkit also gets an inlinehttp = trueregistry config (it runs in its own container and doesn't inherit the daemon setting).Unblocks cutting v0.2.2.
🤖 Generated with Claude Code
ci: build image on releases + manual dispatch only, not every master pushto ci: reserve runner for releases + push image/release over tailscale (not Cloudflare)