bryana
11/22/2021, 6:40 PMdefinition github/issue {
...
relation repository: github/repository
permission close = repository->close_issue
}
definition github/repository {
...
relation role: github/role
permission delete = role->delete_repo
// synthetic permissions for objects that hang off of repo
permission close_issue = role->close_issue
}
definition github/role {
relation member: github/user
relation has_delete_repo: github/role#member
relation has_close_issue: github/role#member
relation has_add_repo_topic: github/role#member
permission delete_repo = member & has_delete_repo
permission close_issue = member & has_close_issue
}
I now want to make this work for members of a team when that team is assigned a role, and I thought this update would work, but its not!
definition github/role {
relation member: github/user | github/team
permission delete_repo = (member + member->membership) & has_delete_repo
permission close_issue = (member + member->membership) & has_close_issue
}
def github/team {
relation maintainer: github/user
relation member: github/user
permission membership = maintainer + member
}
Here is my playground https://play.authzed.com/s/8PHCe2ITEXdm. Any ideas?ecordell
11/22/2021, 7:12 PMrelation member: github/user | github/team#member
will get you closer to what you want:
https://play.authzed.com/s/LOB262BJFTMK/schemabryana
11/22/2021, 9:12 PMmembership
permission thats in the team
object but I wonder if we can replace some of those member->membership
invocations with just member
in the permission and use github/team#member
in the relationsJoey
11/22/2021, 9:16 PMJoey
11/22/2021, 9:16 PMJoey
11/22/2021, 9:16 PM#member
, instead of the team "itself"bryana
11/22/2021, 9:18 PMJoey
11/22/2021, 9:22 PMShyam
11/23/2021, 1:55 AMJake
11/23/2021, 1:56 AMShyam
11/23/2021, 1:57 AMJake
11/23/2021, 1:58 AMShyam
11/23/2021, 2:04 AMShyam
11/23/2021, 2:05 AMJake
11/23/2021, 2:06 AMchance
11/23/2021, 3:18 AMchance
11/23/2021, 3:19 AMchance
11/23/2021, 3:20 AMchance
11/23/2021, 3:23 AMJake
11/23/2021, 3:27 AMchance
11/23/2021, 3:29 AMchance
11/23/2021, 3:29 AMchance
11/23/2021, 3:29 AMchance
11/23/2021, 3:29 AMJake
11/23/2021, 3:31 AMchance
11/23/2021, 3:32 AMchance
11/23/2021, 3:32 AMchance
11/23/2021, 3:34 AMJake
11/23/2021, 3:34 AM