blob: 6cd5318789cee0f3270ad18099e069fdfbd60129 [file] [log] [blame]
################################################################################
# Generic settings
################################################################################
[access]
inheritFrom = All-Projects
[submit]
action = rebase if necessary
rejectEmptyCommit = true
[receive]
requireSignedOffBy = true
[project]
description = Gerrit settings common to all projects under the RF-A namespace
################################################################################
# Git refs
################################################################################
[access "refs/*"]
owner = group user/Sandrine Afsa (sandrine-bailleux-arm)
# Restrict visibility to a subset of developers.
read = group Bot Users
# The CI bot also needs access.
read = group Service Users
read = group trusted-firmware-a-next
[access "refs/heads/*"]
create = group rusted-firmware-a-approvers
forgeAuthor = group rusted-firmware-a-approvers
forgeCommitter = group rusted-firmware-a-approvers
forgeServerAsCommitter = group rusted-firmware-a-approvers
push = +force group rusted-firmware-a-approvers
submit = group rusted-firmware-a-approvers
removeReviewer = group trusted-firmware-a-next
abandon = group rusted-firmware-a-approvers
label-Code-Review = -2..+2 group rusted-firmware-a-approvers
label-Code-Review = -1..+1 group rusted-firmware-a-developers
label-Unsafe-Review = -1..+1 group rusted-firmware-a-unsafe-approvers
# A CI job will vote Unsafe-Review+1 for patches that do not touch any
# unsafe code.
label-Unsafe-Review = +0..+1 group Bot Users
label-Verified = -1..+1 group Bot Users
label-Verified = -1..+1 group rusted-firmware-a-approvers
[access "refs/meta/dashboards/*"]
create = group trusted-firmware-a-arm-approvers
push = group trusted-firmware-a-arm-approvers
[access "refs/meta/config"]
read = group rusted-firmware-a-approvers
create = group rusted-firmware-a-approvers
push = group rusted-firmware-a-approvers
submit = group rusted-firmware-a-approvers
label-Code-Review = -2..+2 group rusted-firmware-a-approvers
label-Verified = -1..+1 group rusted-firmware-a-approvers
label-Code-Owner-Review = group rusted-firmware-a-approvers
label-Maintainer-Review = group rusted-firmware-a-approvers
################################################################################
# Labels
################################################################################
[label "Unsafe-Review"]
value = -1 Not sound
value = 0 No score
value = +1 Sound
defaultValue = 0
copyCondition = changekind:NO_CHANGE OR changekind:NO_CODE_CHANGE OR changekind:TRIVIAL_REBASE
function = NoBlock
[label "Verified"]
value = -1 Fails
value = 0 No score
value = +1 Verified
defaultValue = 0
copyCondition = changekind:NO_CHANGE OR changekind:NO_CODE_CHANGE OR changekind:TRIVIAL_REBASE
function = NoBlock
# Gerrit auto-generates a "Code Review" submit requirement from the legacy label
# "function" for the built-in Code-Review label. Since we've got our own custom
# submit requirement, we do not want this auto-generated one to show up, as it's
# confusing to developers.
#
# Redefine the Code-Review label with the same values as usual, but change the
# "function" to NoBlock.
[label "Code-Review"]
function = NoBlock
defaultValue = 0
value = -2 This shall not be merged
value = -1 I would prefer this is not merged as is
value = 0 No score
value = +1 Looks good to me, but someone else must approve
value = +2 Looks good to me, approved
copyCondition = changekind:NO_CHANGE OR changekind:TRIVIAL_REBASE OR is:MIN
################################################################################
# Submit requirements.
################################################################################
# We might inherit the default "Code Review" submit requirement from a parent
# project (e.g. All-Projects).
# Make it moot, as we want our custom ones below - and only those - to apply.
[submit-requirement "Code Review"]
applicableIf = false
submittableIf = false
[submit-requirement "Submittable"]
applicableIf = -branch:refs/meta/config
submittableIf = label:Code-Review=1 AND label:Code-Review=MAX,user=non_uploader AND -label:Code-Review=MIN AND label:Verified=MAX AND -label:Verified=MIN AND label:Unsafe-Review=MAX AND -label:Unsafe-Review=MIN
canOverrideInChildProjects = true
[submit-requirement "Submittable-project-config"]
applicableIf = branch:refs/meta/config
submittableIf = label:Code-Review=MAX,user=non_uploader AND -label:Code-Review=MIN
canOverrideInChildProjects = true