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.
Unify terminology across the web UI and docs
ab326d3ac1fd947a9df45f31f6dc10ab38627882 · Keenan Nemetz · 14d ago · parent 5b814e99
Unify terminology across the web UI and docs Use account, repository, change request, enrollment link, instance admin, and sign in/out consistently. Rename the access guide to accounts-and-access.md, update its links, and record the canonical terms and retained command/URL spellings in the documentation index.
docs/operations.md +5−5
| @@ -1,7 +1,7 @@ | |||
| 1 | 1 | # Operations | |
| 2 | 2 | ||
| 3 | 3 | A forge you own should be easy to back up and recover. Vole keeps the important | |
| 4 | state small: a user database, a handful of files, and ordinary Git repositories. | ||
| 4 | state small: an account database, a handful of files, and ordinary Git repositories. | ||
| 5 | 5 | These are the tasks that keep an instance healthy. | |
| 6 | 6 | ||
| 7 | 7 | ## Back up an instance | |
| @@ -19,8 +19,8 @@ cp data/audit.log backup/ 2>/dev/null # history of admin actions | |||
| 19 | 19 | `users.db` by hand can miss recent changes that have not been written to the main | |
| 20 | 20 | database file yet. | |
| 21 | 21 | ||
| 22 | If you lose the user database, you need to recreate accounts and re-enroll their | ||
| 23 | passkeys. You do not lose repositories. The backup contains account metadata, | ||
| 22 | If you lose the account database, you need to recreate accounts and re-enroll | ||
| 23 | their passkeys. You do not lose repositories. The backup contains account metadata, | ||
| 24 | 24 | public keys, and hashes of session and enrollment tokens; it does not contain a | |
| 25 | 25 | usable password or a plaintext session token. Treat it as private anyway. | |
| 26 | 26 | ||
| @@ -40,7 +40,7 @@ with them because they are stored in Git. | |||
| 40 | 40 | ||
| 41 | 41 | Release notes for an upgrade: an older `users.db` is upgraded in place when it is | |
| 42 | 42 | opened. Accounts used to have an internal id and an optional display label; both | |
| 43 | are gone, and every key, passkey, invite, session and admin grant is rebuilt | ||
| 43 | are gone, and every key, passkey, enrollment link, session and admin grant is rebuilt | ||
| 44 | 44 | around the registered name. Access-rule entries and file locks in that database | |
| 45 | 45 | are rewritten through the same mapping, and the retired `user_names` alias table | |
| 46 | 46 | is dropped. Take a backup first if you might roll the binary back. Approval files | |
| @@ -96,7 +96,7 @@ repository's `vole` branch. | |||
| 96 | 96 | - Nothing Vole writes is signed: not pushes, not approvals, not CI results. Vole | |
| 97 | 97 | relies on the SSH key at the connection, the checks before a push is accepted, | |
| 98 | 98 | and the audit log. | |
| 99 | - The web interface is read-only for anonymous visitors. Passkey login enables | ||
| 99 | - The web interface is read-only for anonymous visitors. Passkey sign-in enables | ||
| 100 | 100 | issue, comment, and approval writes; HTTP Git clone remains read-only. There is | |
| 101 | 101 | no password store. Restoring an old `users.db` should be followed by | |
| 102 | 102 | `vole admin user revoke-sessions --all`. | |