The repository's readme, rendered.

barerepo / runner / README.md
rendered
log files threads runs releases config jump to file t

barerepo-runner

The build machine agent for barerepo.

go build ./cmd/barerepo-runner
barerepo-runner <token>

The token comes from the add runner page on your barerepo. The server is remembered after the first attach, so you pass it once and never again.

It long-polls outward, so it needs no inbound port and no port forwarding. One binary, nothing outside the standard library.

Where the token comes from

Runs are your own hardware, which is the whole design: there is no hosted CI to pay for and no queue to share. A token is scoped to one repository, so a runner attached to one project cannot read another.

An operator who installs barerepo-runner beside the barerepo binary gets a one paste install on the add runner page, because the server hands out the copy sitting next to it.

Running the cross repo tests

The tests that drive a real server live behind a build tag, because they need all three checkouts side by side. Without the tag this repository builds and tests on its own and depends on nothing.

git clone https://barerepo.com/barerepo/server   ../server
printf 'go 1.24\n\nuse (\n\t./cli\n\t./runner\n\t./server\n)\n' > ../go.work
go test -tags crossrepo ./...
source · rawbarerepo 0.1.0