Reported from a real run: the directory prompt offered nothing, so it read as a question with no right answer, and the group concept - which is what makes the answer obvious - had not been introduced yet. Introducing groups broke this. The directory is derived from the group name, so its default moved to after the name was settled, but the prompt asking for it stayed where it was: before. It arrived with an empty default, and a prompt with nothing in its brackets asks the operator to invent a path. The prompt moves after the name, where the derived value exists and can be shown: Runner label [dejima-confined]: Group name [dejima-confined]: Compose project directory [/home/<user>/runners/dejima-confined]: Reading in that order, the shape explains itself: one directory per group, named for the group, so a second one sits beside the first. That is what the prompt now says, in a line, rather than leaving it to be discovered by getting it wrong. Two tests: with no --dir the project lands under the group's own directory, and the directory follows the group name rather than the label - which is the pair that would break again if the default were ever computed before the name. 82 ok, 0 failed.
Documentation
The README is the map: what this is, which tier you want, and how to operate one once it exists. The build itself is two pages, and this is where the second one lives.
| building-a-runner.md | The build, inside the VM: the Debian install, addressing, one bootstrap command, install.sh's settings, and the runners. The same on any hypervisor and for both tiers. Start at your hypervisor's page and it sends you here |
| reference.md | The two settings named docker.sock, CONFIG_FILE and why an edit can appear to do nothing, the /data volume, compose networks against job networks, whether several runners should share a job network, why the privileged runner is separate, why public egress is not restricted on the node, why the resolver is set per-runner, the cache server |
| ../proxmox/README.md | The node-side half on Proxmox: the VM, the datacenter firewall, the security group and the order its rules go in, and all three snapshot moments including the scheduled rollback |
| ../proxmox/firewall.fw.template | The same node firewall as one annotated file, easier to review in one piece than as a table. Reference, not something to install |
| ../examples/ | The annotated templates dejima-ci-runners renders into ~/runners. Every setting carries the reasoning for its value, which the generated copies do not - read them here rather than reading what lands on the host |
One document lives outside this repository: dejima's docs/ci.md, which
covers why a CI run needs any of this over a sandbox, and why no approval gate
is offered. You do not need it to follow the README.