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/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

A free and open-source forge that lives in your Git repo.

Create accounts with a key and find the instance config

c36d507302c0f7fb24af6eba390c4121d67318c3 · Keenan Nemetz · 16d ago · parent 3abbe749

Create accounts with a key and find the instance config

An account is now written with its first key in one transaction, so a name cannot be claimed without a credential. add-key remains for additional keys, and remote user create forwards the key on stdin.

Local commands now resolve the config from --config, VOLE_CONFIG, ./vole.toml, or ~/.vole/vole.toml before falling back to defaults. init prints --config in its next steps when the instance will not be discovered automatically.

docs/users-and-access.md +7−4

@@ -19,8 +19,8 @@ file locks. Nothing in the file is secret. Vole reloads it every few seconds, so
19 19 key changes and retirements take effect without restarting the server.
20 20
21 21 ```sh
22 vole admin user create alice
23 vole admin user add-key alice --key ~/.ssh/id_ed25519.pub
22 vole admin user create alice --key ~/.ssh/id_ed25519.pub
23 vole admin user add-key alice --key ~/.ssh/id_ed25519_work.pub
24 24 vole admin user list
25 25 vole admin user rm-key alice SHA256:...
26 26 vole admin user rename alice a-alice
@@ -28,6 +28,10 @@ vole admin user retire alice
28 28 vole admin user backup backup/users.db
29 29 ```
30 30
31 `user create` requires the first key and writes the account and key together.
32 `user add-key` adds another key; use it to rotate credentials without changing
33 the account id that access rules and approvals refer to.
34
31 35 To see which account the current remote's key belongs to:
32 36
33 37 ```sh
@@ -42,8 +46,7 @@ machine, mark an account as an **instance admin** and pass `--remote`:
42 46
43 47 ```sh
44 48 vole admin user grant-admin alice
45 vole admin --remote ssh://git@forge.example.com:2222 user create bob
46 vole admin --remote origin user add-key bob --key bob.pub
49 vole admin --remote ssh://git@forge.example.com:2222 user create bob --key bob.pub
47 50 vole admin --remote origin repo create demo --owner bob
48 51 vole admin --remote origin acl default demo read
49 52 ```