Pick any line to see why it is the way it is: the commit, the pull request and issue it came from, and what the agent was thinking.
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 1 | # syntax=docker/dockerfile:1.7 |
| 2 | # | |
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 3 | # The self-hosted runner's image: `g1t-runner` with a Docker Engine of its |
| 4 | # own, for Sysbox. The runner starts `dockerd` inside this container and | |
| 5 | # runs each job in a fresh container on it, so jobs are containers inside | |
| 6 | # the runner's container and nothing reaches the machine: Sysbox gives the | |
| 7 | # container its own user namespace (its root is no one on the machine) and | |
| 8 | # lets it run Docker without --privileged. Never mount the machine's | |
| 9 | # /var/run/docker.sock: the runner refuses to start when it sees one. | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 10 | # |
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 11 | # docker run -d --name g1t-runner --restart unless-stopped \ |
| 12 | # --runtime=sysbox-runc \ | |
| 13 | # -v g1t-runner:/data \ | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 14 | # -e G1T_RUNNER_URL=https://g1t.sh -e G1T_RUNNER_TOKEN=g1trt_… \ |
| The runner's image is g1t.sh/flagon-io/g1t-runner, on g1t's own registry, public | 15 | # g1t.sh/flagon-io/g1t-runner |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 16 | # |
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 17 | # PID 1 is docker-init (tini), which supervises g1t-runner and reaps what it |
| 18 | # leaves; g1t-runner supervises dockerd (crates/runner/src/selfhosted/engine.rs). | |
| 19 | # git, bash and Node stay for host mode (G1T_RUNNER_NO_DOCKER=1), which is | |
| 20 | # deprecated. | |
| 21 | # | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 22 | # Build context: a folder holding `g1t-runner` for the image's platform, |
| 23 | # the static Linux build that scripts/runner-release.mjs makes (or | |
| 24 | # scripts/build-runner.mjs, for x64). The release workflow builds and | |
| 25 | # pushes it for linux/amd64 and linux/arm64. | |
| 26 | ||
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 27 | # Docker's static builds: the engine, containerd, runc, the CLI, tini. |
| 28 | FROM docker:28-dind AS docker | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 29 | |
| 30 | FROM node:24-bookworm-slim | |
| 31 | RUN apt-get update \ | |
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 32 | && apt-get install -y --no-install-recommends git ca-certificates curl iptables procps \ |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 33 | && rm -rf /var/lib/apt/lists/* \ |
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 34 | && mkdir -p /data /home/runner |
| 35 | COPY --from=docker /usr/local/bin/dockerd /usr/local/bin/containerd /usr/local/bin/containerd-shim-runc-v2 \ | |
| 36 | /usr/local/bin/ctr /usr/local/bin/runc /usr/local/bin/docker-proxy /usr/local/bin/docker-init \ | |
| 37 | /usr/local/bin/docker /usr/local/bin/ | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 38 | COPY --chmod=0755 g1t-runner /usr/local/bin/g1t-runner |
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 39 | # Its configuration and credential live on this volume. Sysbox keeps the |
| 40 | # engine's /var/lib/docker on the machine's disk for this container alone. | |
| 41 | ENV G1T_RUNNER_DIR=/data \ | |
| 42 | G1T_RUNNER_SANDBOX=nested | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 43 | VOLUME /data |
| Merge branch 'claude/cool-newton-7nm8r9' (#36): real GitHub Actions on g1t, managed deploy workflows, g1t/deploy and the Sysbox runner 0.2.0. The merge keeps both sides' webhook events and API operations, says agent images need tar, guards the job engine's stop to Unix so the runner builds on Windows again, and keeps the moves tests' previews from going idle as the calendar passes their fixture's date. | 44 | ENTRYPOINT ["docker-init", "--", "g1t-runner"] |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 45 | CMD ["register-and-run"] |
This file's history is long; its oldest lines are credited to the oldest commit read.