Skip to content
45 linesCodeBlameRaw

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 incidents1# 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 incidents10#
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 incidents14# -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, public15# g1t.sh/flagon-io/g1t-runner
Fast pages, required checks on the branch, self-hosted runners, honest incidents16#
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 incidents22# 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.
28FROM docker:28-dind AS docker
Fast pages, required checks on the branch, self-hosted runners, honest incidents29
30FROM node:24-bookworm-slim
31RUN 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 incidents33 && 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
35COPY --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 incidents38COPY --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.
41ENV G1T_RUNNER_DIR=/data \
42 G1T_RUNNER_SANDBOX=nested
Fast pages, required checks on the branch, self-hosted runners, honest incidents43VOLUME /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.44ENTRYPOINT ["docker-init", "--", "g1t-runner"]
Fast pages, required checks on the branch, self-hosted runners, honest incidents45CMD ["register-and-run"]

This file's history is long; its oldest lines are credited to the oldest commit read.