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 the instance access editor and repository danger zone

2973f7274b3c569de6018239ac8c90df98c38a1b · Keenan Nemetz · 15d ago · parent 1948358f

Add the instance access editor and repository danger zone

Instance admins get /admin: a repository list and a per-repository ACL editor for
default role, per-account roles, protected branches, approvals, checks, and
runners. The editor reads repositories directly instead of through the read
rule, because an instance admin may not have a role in the repository they are
administering. Everything else still hides behind a 404.

Repository admins get rename and delete on the settings page behind typed
confirmation. Both go through the instance operations that also move the index,
queue, LFS namespace, and locks, carry CSRF, and are audited.

server/web/static/vole.css +5

@@ -1428,6 +1428,9 @@ details[open] > summary .tree-chevron { transform: rotate(90deg); }
1428 1428 /* Form cards: fields live on a card, actions sit below it and align right.
1429 1429 Every primary action uses the same height and horizontal padding. */
1430 1430 .form-block { margin: 12px 0; }
1431 .acl-check { display: flex; align-items: center; gap: 6px; }
1432 .acl-check input[type="checkbox"] { width: auto; margin: 0; }
1433 table.acl select { min-width: 9rem; }
1431 1434 .form-card { margin: 0; }
1432 1435 .form-actions {
1433 1436 display: flex;
@@ -1626,3 +1629,5 @@ form.htmx-request .label-tokens { opacity: 0.6; }
1626 1629 @media (max-width: 720px) {
1627 1630 .activity-title { white-space: normal; }
1628 1631 }
1632 .danger-zone { border-color: color-mix(in srgb, var(--bad) 40%, var(--border)); }
1633 .danger-zone h3 { margin: 14px 0 4px; }