Customize TF-RMM config

Signed-off-by: Soby Mathew <soby.mathew@arm.com>
Change-Id: I9560b4b55d92dd8000ab2979b4e3a441451b9e7e
diff --git a/project.config b/project.config
index 99af035..36b89c7 100644
--- a/project.config
+++ b/project.config
@@ -2,6 +2,10 @@
 	inheritFrom = All-Projects
 [submit]
 	action = merge always
+	rejectEmptyCommit = true
+[receive]
+	requireSignedOffBy = true
+	rejectImplicitMerges = true
 [access "refs/*"]
 	owner = group Administrators
 [project]
@@ -10,22 +14,25 @@
 	abandon = group tf-rmm-approvers
 	create = group tf-rmm-approvers
 	forgeAuthor = group tf-rmm-approvers
+	forgeCommitter = group tf-rmm-approvers
 	forgeServerAsCommitter = group tf-rmm-approvers
 	label-Allow-CI = +0..+2 group tf-rmm-approvers
 	label-Code-Review = -1..+1 group Registered Users
-	label-Maintainer-Review = -1..+1 group tf-rmm-approvers
+	label-Code-Review = -1..+2 group tf-rmm-approvers
 	label-Verified = -1..+1 group Bot Users
 	label-Verified = -1..+1 group tf-rmm-approvers
 	push = +force group tf-rmm-approvers
 	submit = group tf-rmm-approvers
+
 [access "refs/meta/config"]
 	create = group tf-rmm-approvers
-	label-Code-Review = -1..+1 group tf-rmm-approvers
-	label-Maintainer-Review = -1..+1 group tf-rmm-approvers
+	label-Code-Review = -1..+2 group tf-rmm-approvers
 	label-Verified = -1..+1 group tf-rmm-approvers
 	push = group tf-rmm-approvers
 	read = group tf-rmm-approvers
 	submit = group tf-rmm-approvers
+	exclusiveGroupPermissions = submit
+
 [access "refs/meta/dashboards/*"]
 	create = group tf-rmm-approvers
 	push = group tf-rmm-approvers
@@ -33,3 +40,33 @@
 	create = group tf-rmm-approvers
 	createSignedTag = group tf-rmm-approvers
 	createTag = group tf-rmm-approvers
+
+
+# All Registered Users and maintainers use it to record their concerns.
+[label "Code-Review"]
+	function = MaxWithBlock
+	value = -1 I would prefer this is not merged as is
+	value = 0 No score
+	value = +1 Looks good to me
+	value = +2 Looks good to be merged
+	copyAllScoresIfNoCodeChange = true
+	copyAllScoresOnTrivialRebase = true
+	defaultValue = 0
+
+# The Allow-CI label triggers the Open CI on the patch.
+# It sets the Verified score.
+[label "Allow-CI"]
+	function = NoBlock
+	value = 0 No score
+	value = +1 Approved for automated testing on Open CI, shallow tests
+	value = +2 Approved for automated testing on Open CI, in-depth tests
+	defaultValue = 0
+
+[label "Verified"]
+	function = MaxWithBlock
+	value = -1 Fails
+	value = 0 No score
+	value = +1 Verified
+	copyAllScoresIfNoCodeChange = true
+	copyAllScoresOnTrivialRebase = true
+	defaultValue = 0