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 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.

server/web/requests.go +1−1

@@ -45,7 +45,7 @@ func (w *Web) requestForm(r *http.Request, m *repo.Meta) requestFormData {
45 45 accountID := w.accountName(r)
46 46 acl, _ := m.ACL()
47 47 canOpen := acl != nil && accountID != "" && acl.CanOpenRequest(accountID)
48 if acl != nil && acl.RoleFor(accountID) == access.Contributor {
48 if acl != nil && acl.RoleFor(accountID) == access.Contribute {
49 49 name := accountID
50 50 headBranches = nil
51 51 for _, branch := range branches {