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.

Name the job's bot account with acts-as

ac541b268df7626894acdb3405a886a0f0d7cc4a · Keenan Nemetz · 6d ago · parent 57dc79af

Name the job's bot account with acts-as

The field was `bot`, the same word as the account kind, so the YAML said
"bot: coding-agent" and the reference page had to explain that the job acts
as that account. The key now says what it does: `acts-as: coding-agent`.

Nothing else moves. A bot is still a bot: `--bot`, the directory and profile
badge, the kind column, and the accounts page all keep the word. The job
model still calls the account Bot, because that is what it is.

There is no alias. Unknown keys already fail the parse, the field has not
shipped in a release, and this repository has no tags, so a second spelling
would outlive the only reason to have one. A test pins the old key as
rejected.

server/ssh/credential.go +6−6

@@ -2,12 +2,12 @@ package ssh
2 2
3 3 // The key a job acts with.
4 4 //
5 // A workflow that names `bot: <account>` gets a credential for that account when the
6 // job is leased: an ed25519 pair generated here, the public half stored in the queue
7 // with the run, repository and expiry, and the private half sent on the lease
8 // channel. The runner writes it into the job's run directory, so a step's `git push`
9 // or `vole issue comment` authenticates as the account without the repository
10 // holding a long-lived key.
5 // A workflow that names `acts-as: <account>` gets a credential for that account
6 // when the job is leased: an ed25519 pair generated here, the public half stored in
7 // the queue with the run, repository and expiry, and the private half sent on the
8 // lease channel. The runner writes it into the job's run directory, so a step's
9 // `git push` or `vole issue comment` authenticates as the account without the
10 // repository holding a long-lived key.
11 11 //
12 12 // Two checks decide whether the job can have it: the account must exist, be active,
13 13 // and be a bot account. The role it may act with is not decided here — the hook