Gitea Act Runner: DinD stack with cache + parallel jobs
Stable docker-compose setup for building Rust projects on Gitea Actions. DinD-isolated daemon, built-in cache server, capacity=4 parallel jobs, healthcheck-gated startup. Portable to other build machines via .env. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HU4wDwdydNZpR3YkMiYYy8
This commit is contained in:
+44
@@ -0,0 +1,44 @@
|
||||
log:
|
||||
level: info
|
||||
|
||||
runner:
|
||||
# Run multiple jobs concurrently. Overridden by env at compose level too.
|
||||
capacity: 4
|
||||
timeout: 3h
|
||||
# Keep the runner alive; jobs are ephemeral containers.
|
||||
insecure: false
|
||||
# Env injected into every job. Speeds up Rust builds.
|
||||
envs:
|
||||
CARGO_TERM_COLOR: always
|
||||
CARGO_INCREMENTAL: "0"
|
||||
CARGO_NET_RETRY: "10"
|
||||
fetch_timeout: 5s
|
||||
fetch_interval: 2s
|
||||
# Labels decide which docker image runs each job. Jobs use `runs-on: ubuntu-latest`.
|
||||
labels:
|
||||
- "ubuntu-latest:docker://catthehacker/ubuntu:act-22.04"
|
||||
- "ubuntu-22.04:docker://catthehacker/ubuntu:act-22.04"
|
||||
- "ubuntu-24.04:docker://catthehacker/ubuntu:act-24.04"
|
||||
|
||||
cache:
|
||||
# Built-in cache server so actions/cache works (Rust deps, target/, etc.)
|
||||
enabled: true
|
||||
dir: ""
|
||||
# Empty host -> auto-detect outbound IP reachable from job containers.
|
||||
host: ""
|
||||
port: 0
|
||||
|
||||
container:
|
||||
# Talk to the DinD daemon, not the host.
|
||||
network: ""
|
||||
privileged: false
|
||||
options: ""
|
||||
workdir_parent: ""
|
||||
# Allow workflows to mount caches from the DinD volume.
|
||||
valid_volumes:
|
||||
- "**"
|
||||
docker_host: "-"
|
||||
force_pull: false
|
||||
|
||||
host:
|
||||
workdir_parent: ""
|
||||
Reference in New Issue
Block a user