- Add RemoveCollaborator handler: delete PDS record, RBAC policy, and DB row
- Add DELETE /settings/collaborator route (repo:owner)
- Load collaborator rkey from DB for removal
- Add trash icon remove button on access settings
+3
-2
appview/pages/pages.go
+19
appview/pages/templates/repo/settings/access.html
+95
appview/repo/repo.go
+1
appview/repo/router.go
+9
-6
appview/repo/settings.go
+31
knotserver/db/collaborators.go
+8
knotserver/db/db.go
+43
-1
knotserver/ingester.go
+9
rbac/rbac.go
+22
spindle/db/collaborators.go
+8
spindle/db/db.go
+30
spindle/ingester.go
History
2 rounds
4 comments
1 commit
expand
collapse
- Add RemoveCollaborator handler: delete PDS record, RBAC policy, and DB row
- Add DELETE /settings/collaborator route (repo:owner)
- Load collaborator rkey from DB for removal
- Add trash icon remove button on access settings
Signed-off-by: Nupur Agrawal <nupur202000@gmail.com>
expand 1 comment
1 commit
expand
collapse
- Add RemoveCollaborator handler: delete PDS record, RBAC policy, and DB row
- Add DELETE /settings/collaborator route (repo:owner)
- Load collaborator rkey from DB for removal
- Add trash icon remove button on access settings
Signed-off-by: Nupur Agrawal <nupur202000@gmail.com>
expand 3 comments
thanks for the contribution! this PR does not handle all the scenarios:
- the collaborator should be removed from the knot
- their key must be removed from the knot if they don't have any other collaborator/membership relationship with the knot
- likewise with spindles
- nice catch about removing keys if no other relationship exist, will dig into this
lovely, thanks for picking this up. the tricky bit is that knots presently do not hold rkeys in their DBs, and embedded tap would help us backfill and achieve this easily.
added collaborators table to keep track in knotserver and spindle