Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

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.

server/ssh/runner.go

History on main · 33 commit(s)

d37d301f Publish repositories as Go modules and move the module path to rodent.software Keenan Nemetz 15h ago
786d7ce1 Make a closed SSH server stop before it returns Keenan Nemetz 2d ago
c1929d2f Let a job start service containers beside it Keenan Nemetz 5d ago
0c14f078 Stop a running job at its runner's next heartbeat Keenan Nemetz 6d ago
6e1fca51 Give a job a credential for the bot it acts as Keenan Nemetz 6d ago
e7aa0785 Let a job budget its whole run Keenan Nemetz 6d ago
d7958024 Let a job declare the network it needs Keenan Nemetz 6d ago
4ac42680 Let a job declare the secrets it reads Keenan Nemetz 7d ago
eb07ff56 Add event, schedule and manual workflow triggers Keenan Nemetz 8d ago
5ece70a5 Stream run logs over the runner's SSH channel Keenan Nemetz 10d ago
b312e166 Store CI run records in the database, not the repository Keenan Nemetz 10d ago
78cd3437 Bound what an unauthenticated SSH client can spend Keenan Nemetz 12d ago
62576fa8 Identify accounts by their registered name Keenan Nemetz 14d ago
3b39a84c Add packaging, a CI workflow, and containerised local runs Keenan Nemetz 14d ago
70b70264 Require an image for every CI job Keenan Nemetz 15d ago
7da9111e Run CI jobs in a container chosen by the runner Keenan Nemetz 15d ago
c5902451 refactor Keenan Nemetz 16d ago
f50f6fab One trust model: attribution at the boundary, and a log of what it decided Keenan Nemetz 16d ago
6c03e461 Phase 4: a job can name the machine it needs Keenan Nemetz 16d ago
b238ac24 Phase 4: a runner can narrow what it takes, and cannot widen it Keenan Nemetz 16d ago
8d336083 Phase 4: one repository may be bounded, and a freed slot wakes the parked Keenan Nemetz 16d ago
379dad1e Phase 4: a run record names the machine, not the toolchain Keenan Nemetz 16d ago
ac433531 Phase 4: a runners page, built from the queue's own presence Keenan Nemetz 16d ago
34afc569 Phase 4: an idle runner parks on the queue instead of polling it Keenan Nemetz 16d ago
90fdaf39 Phase 4: the runner publishes its result as a signed commit Keenan Nemetz 16d ago
852c067d Phase 4: only allowed runners green-light a branch Keenan Nemetz 16d ago
22528ac3 Phase 4: the runner signs the result it reports Keenan Nemetz 16d ago
86fe5bb4 Phase 4: the runner uploads the log, so the server cannot write it Keenan Nemetz 16d ago
0f442b1c Phase 7 slice 8: a tag push builds the release Keenan Nemetz 17d ago
88e980b0 Phase 7 slice 7: the build deploys the site Keenan Nemetz 17d ago
213f4d6d Phase 7 slice 6: a job declares its outputs, the runner publishes them Keenan Nemetz 17d ago
64ac5071 Phase 5: LFS objects, over SSH for writes and the proxy for reads Keenan Nemetz 17d ago
b44cbfaf Phase 4 slice 2: the queue and the runner Keenan Nemetz 17d ago