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 instance-wide roles and refine access UI
5b814e9958090cfd1fa826efb2d375bf613547c1 · Keenan Nemetz · 14d ago · parent 9579c1f9
Add instance-wide roles and refine access UI Instance roles now live on accounts, apply to public repositories, and the Admin role is the unified instance-admin permission with access to every repository. Repository ACLs can raise an instance role but not lower it. Adds role assignment to the users UI and CLI, open-registration role config, a reusable role picker, and separates adding a repository account from saving access rules.
forge/instance.go +3
| @@ -82,6 +82,9 @@ func Open(cfg *config.Config, binPath string) (*Instance, error) { | |||
| 82 | 82 | return nil, fmt.Errorf("open access rules: %w", err) | |
| 83 | 83 | } | |
| 84 | 84 | acls.AuditPath = cfg.AuditLog() | |
| 85 | // Instance roles are account standing, owned by the roster. Wiring the | ||
| 86 | // lookup here means every ACL read from this instance applies them. | ||
| 87 | acls.InstanceRole = ident.InstanceRole | ||
| 85 | 88 | ||
| 86 | 89 | lk, err := lfs.OpenLocks(cfg.UsersDB()) | |
| 87 | 90 | if err != nil { | |