Commit Graph

3 Commits

Author SHA1 Message Date
565b7889d8 fix: runner stability and resource limits (#8)
## Summary
- Add 2G swap on runner to prevent OOM crashes
- Limit job container memory to 1536MB
- Restrict runner concurrency to 1 job at a time
- Disable cache to avoid Docker network connectivity issues (`ETIMEDOUT 172.17.0.2`)
- Configure job containers with `--add-host` for private network gitea resolution

## Test plan
- [x] Runner survives Go builds that previously OOM-killed the server
- [ ] Verify swap is active after fresh provision (`swapon --show`)
- [ ] Confirm job containers respect memory limit

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Reviewed-on: #8
Co-authored-by: M.V. Hutz <git@maximhutz.me>
Co-committed-by: M.V. Hutz <git@maximhutz.me>
2026-03-16 02:52:08 +00:00
3f724dbdfd fix: runner DNS resolution and stale registration (#7)
## Summary
- Fix `etc_hosts` templating — dict key was rendered as literal `{{ server_fqdn.value }}` instead of the actual domain
- Clear runner data volume on each deploy to prevent stale registration errors when the token changes
- Use instance-level registration token for global runner access

## Test plan
- [x] `/etc/hosts` in runner container shows `git.maximhutz.com` mapped to `10.0.1.2`
- [x] Runner registers and connects successfully
- [ ] Verify runner picks up jobs from any repo

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Reviewed-on: #7
Co-authored-by: M.V. Hutz <git@maximhutz.me>
Co-committed-by: M.V. Hutz <git@maximhutz.me>
2026-03-16 02:00:54 +00:00
04ca230bee feat: add Gitea Actions runner (#6)
## Summary
- Adds a private runner server on the Hetzner private network (no public IP)
- NAT through the gitea server for outbound internet access via `hcloud_network_route` and iptables forwarding rules
- Runner connects to gitea over HTTPS on the private network with TLS verification disabled
- Includes Taskfile commands for runner deployment and SSH access

## Test plan
- [x] Runner registers with gitea instance
- [x] Private network connectivity verified
- [ ] Run a test workflow to confirm end-to-end CI

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Reviewed-on: #6
Co-authored-by: M.V. Hutz <git@maximhutz.me>
Co-committed-by: M.V. Hutz <git@maximhutz.me>
2026-03-16 01:40:44 +00:00