zuul/tests/fixtures/layout.yaml
Tobias Henkel ea98a194cc Case sensitive label matching
After upgrading Gerrit to 2.13 our gate stopped working. The reason
for this is that after a successful gate run zuul does something like
'gerrit review --label verified=2 --submit'. The verified label in
Gerrit by default is configured as 'Verified'. The newer version of
gerrit behaves different now. It accepts the +2 vote on verified but
doesn't submit the patch anymore if the casing is not correct. This
forces us to specify the label in the same casing as gerrit
expects. In that case the tolower() in canMerge prevents the patch
from entering the gate.

In order to avoid confusion and be consistent, avoid any case
conversions and use the labels exactly as defined in Gerrit.

Note that this patch requires changes to the pipelines such that the
labels are spelled exactly as defined in Gerrit.

Change-Id: I9713a075e07b268e4f2620c0862c128158283c7c
2017-07-27 07:46:35 +02:00

234 lines
4.5 KiB
YAML

includes:
- python-file: custom_functions.py
pipelines:
- name: check
manager: independent
source:
gerrit
trigger:
gerrit:
- event: patchset-created
success:
gerrit:
Verified: 1
failure:
gerrit:
Verified: -1
- name: post
manager: independent
source:
gerrit
trigger:
gerrit:
- event: ref-updated
ref: ^(?!refs/).*$
- name: gate
manager: dependent
failure-message: Build failed. For information on how to proceed, see http://wiki.example.org/Test_Failures
source:
gerrit
trigger:
gerrit:
- event: comment-added
approval:
- Approved: 1
success:
gerrit:
Verified: 2
submit: true
failure:
gerrit:
Verified: -2
start:
gerrit:
Verified: 0
precedence: high
- name: unused
manager: independent
dequeue-on-new-patchset: false
source:
gerrit
trigger:
gerrit:
- event: comment-added
approval:
- Approved: 1
- name: dup1
manager: independent
source:
gerrit
trigger:
gerrit:
- event: change-restored
success:
gerrit:
Verified: 1
failure:
gerrit:
Verified: -1
- name: dup2
manager: independent
source:
gerrit
trigger:
gerrit:
- event: change-restored
success:
gerrit:
Verified: 1
failure:
gerrit:
Verified: -1
- name: conflict
manager: dependent
failure-message: Build failed. For information on how to proceed, see http://wiki.example.org/Test_Failures
source:
gerrit
trigger:
gerrit:
- event: comment-added
approval:
- Approved: 1
success:
gerrit:
Verified: 2
submit: true
failure:
gerrit:
Verified: -2
start:
gerrit:
Verified: 0
- name: experimental
manager: independent
source:
gerrit
trigger:
gerrit:
- event: patchset-created
success:
gerrit: {}
failure:
gerrit: {}
jobs:
- name: ^.*-merge$
failure-message: Unable to merge change
hold-following-changes: true
tags: merge
- name: nonvoting-project-test2
voting: false
- name: project-testfile
files:
- '.*-requires'
- name: project1-project2-integration
queue-name: integration
- name: mutex-one
mutex: test-mutex
- name: mutex-two
mutex: test-mutex
- name: project1-merge
tags:
- project1
- extratag
projects:
- name: org/project
merge-mode: cherry-pick
check:
- project-merge:
- project-test1
- project-test2
- project-testfile
gate:
- project-merge:
- project-test1
- project-test2
- project-testfile
post:
- project-post
dup1:
- project-test1
dup2:
- project-test1
- name: org/project1
check:
- project1-merge:
- project1-test1
- project1-test2
- project1-project2-integration
gate:
- project1-merge:
- project1-test1
- project1-test2
- project1-project2-integration
post:
- project1-post
- name: org/project2
check:
- project2-merge:
- project2-test1
- project2-test2
- project1-project2-integration
gate:
- project2-merge:
- project2-test1
- project2-test2
- project1-project2-integration
post:
- project2-post
- name: org/project3
check:
- project3-merge:
- project3-test1
- project3-test2
- project1-project2-integration
gate:
- project3-merge:
- project3-test1
- project3-test2
- project1-project2-integration
post:
- project3-post
- name: org/nonvoting-project
check:
- nonvoting-project-merge:
- nonvoting-project-test1
- nonvoting-project-test2
gate:
- nonvoting-project-merge:
- nonvoting-project-test1
- nonvoting-project-test2
post:
- nonvoting-project-post
- name: org/conflict-project
conflict:
- conflict-project-merge:
- conflict-project-test1
- conflict-project-test2
- name: org/noop-project
gate:
- noop
- name: org/experimental-project
experimental:
- experimental-project-test
- name: org/no-jobs-project
check:
- project-testfile