vole
Clone
Read only, no credentials:
https://rodent.software/git/vole.git
Write over SSH with a registered key:
git clone ssh://git@0.0.0.0:2222/vole.git
A free and open-source forge that lives in your Git repo.
Run CI jobs in a container chosen by the runner
7da9111ecabb236d48fc48592cd3d1d45f9afe78 · Keenan Nemetz · 15d ago · parent 474a812d
Run CI jobs in a container chosen by the runner Each lease gets a disposable checkout and, when --image is set, its own container from that image. The runner keeps the SSH key and trusted Git cache outside the job, so workflow code cannot reach either; older caches are rebuilt because a previous job may have written to them. The record names the image and runtime, and the queue mirrors them for the run page. Without --image the runner still executes on the host and says so.
server/web/templates.go +1−1
| @@ -872,7 +872,7 @@ with <code>vole runner --remote ssh://git@<host></code>. If a job asks for | |||
| 872 | 872 | · attempt {{.Run.Attempts}} | |
| 873 | 873 | · {{since .Run.Created.Unix}} | |
| 874 | 874 | </p> | |
| 875 | {{if .Run.OS}}<p class="muted">ran on {{.Run.OS}}/{{.Run.Arch}}</p>{{end}} | ||
| 875 | {{if .Run.OS}}<p class="muted">ran on {{.Run.OS}}/{{.Run.Arch}}{{if .Run.Image}} · in <code>{{.Run.Image}}</code> via {{.Run.Runtime}}{{end}}</p>{{end}} | ||
| 876 | 876 | {{if .Attestation}}<p class="muted">reported by <strong>{{.Signer}}</strong>{{if .Attestation.CommitID}} · <a href="/r/{{.Name}}/commit/{{.Attestation.CommitID}}">the commit that records it</a>{{end}} · the instance accepted this from that account's key at the push boundary, and logged it</p>{{end}} | |
| 877 | 877 | {{if .Counts}}<p class="muted">counts as a check for this repository</p>{{else if .CountsWhy}}<p class="muted">does not count as a check: {{.CountsWhy}}</p>{{end}} | |
| 878 | 878 | {{if .HasLog}}<p><a href="/r/{{.Name}}/runs/{{.Run.ID}}/log">log</a>{{if gt (len .Logs) 1}} · by attempt: | |