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.

Add remote administration and local workflow runs

3abbe749096f4d7ff76f4d468e4427829b8a6f95 · Keenan Nemetz · 16d ago · parent 520470e1

Add remote administration and local workflow runs

Make `vole admin` the single namespace for user, repository, and access
management, runnable locally or over SSH by instance admins. Instance-admin
grants live in users.db, and the audit log names the actor separately from the
account being changed.

Add `vole workflow run` to execute workflow jobs in the working tree without a
server or runner. Positional arguments select workflows, --job selects jobs, and
the command reuses the push-time validator.

Update the README and guides for the new command shapes.

core/lfs/lfs.go +2−2

@@ -6,7 +6,7 @@
6 6 // two repositories costs one copy.
7 7 //
8 8 // The store is derived, not authoritative: git is. An object that no live ref
9 // points at is garbage, which is why `vole gc` marks from the refs rather than
9 // points at is garbage, which is why `vole admin gc` marks from the refs rather than
10 10 // trusting a counter that a crash could have left wrong.
11 11 package lfs
12 12
@@ -476,7 +476,7 @@ func (s *Store) Walk(fn func(oid string, size int64) error) error {
476 476 })
477 477 }
478 478
479 // Usage totals what the store holds, for `vole gc` and the repository page.
479 // Usage totals what the store holds, for `vole admin gc` and the repository page.
480 480 func (s *Store) Usage() (objects int, bytes int64, err error) {
481 481 err = s.Walk(func(_ string, size int64) error {
482 482 objects++