summaryrefslogtreecommitdiff
path: root/gitano-admin/rules/adminchecks.lace
blob: ffe99a0961a8b6cde8e43ab027199f8552277259 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#  _____                   
# |_   _| __ _____   _____ 
#   | || '__/ _ \ \ / / _ \
#   | || | | (_) \ V /  __/
#   |_||_|  \___/ \_/ \___|
#
# Copyright 2012 Codethink Limited
#
# Core project administration rules

# Called with ref known to be refs/gitano/admin

# Administrators already got to do anything, so this is for non-admins

# Non-admin members may not delete the admin ref
deny "Non-administrators may not delete the admin ref" op_deleteref

# Otherwise, the project's owner is allowed to alter the admin tree
allow "Project owner may alter the admin ref" is_owner repo_is_personal

# Project admins may alter admin refs
allow "Project admins may alter the admin ref of project repos" repo_is_local_project project_admin

# Any other opportunities for altering the admin ref must be provided
# by the project's rules