Improve job dependencies using graph instead of tree

This replaces the job dependency tree with a graph so that we can
indicate that a job should wait until one or more jobs are complete
before starting.

Project pipeline job definitions are now a flat list, with each job
specifying its dependencies as the job attribute 'dependencies'.

Fixes bug #1166937.

Signed-off-by: Fredrik Medley <fredrik.medley@autoliv.com>
Signed-off-by: Fredrik Medley <fredrik.medley@gmail.com>
Signed-off-by: James E. Blair <jeblair@redhat.com>
Co-Authored-By: James E. Blair <jeblair@redhat.com>
Change-Id: I921940cafeea0738c39deb99357cfd7c91592359
changes/73/443973/5
Fredrik Medley 7 years ago committed by James E. Blair
parent e06a03bb45
commit f8aec83b3b
  1. 7
      doc/source/zuul.rst
  2. 8
      tests/fixtures/config/ansible/git/common-config/zuul.yaml
  3. 1
      tests/fixtures/config/ansible/git/org_project/.zuul.yaml
  4. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/A.yaml
  5. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/B.yaml
  6. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/C.yaml
  7. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/D.yaml
  8. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/E.yaml
  9. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/F.yaml
  10. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/G.yaml
  11. 2
      tests/fixtures/config/dependency-graph/git/common-config/playbooks/project-test1.yaml
  12. 73
      tests/fixtures/config/dependency-graph/git/common-config/zuul.yaml
  13. 1
      tests/fixtures/config/dependency-graph/git/org_project/README
  14. 8
      tests/fixtures/config/dependency-graph/main.yaml
  15. 7
      tests/fixtures/config/duplicate-pipeline/git/common-config/zuul.yaml
  16. 6
      tests/fixtures/config/in-repo/git/common-config/zuul.yaml
  17. 21
      tests/fixtures/config/merges/git/common-config/zuul.yaml
  18. 6
      tests/fixtures/config/multi-tenant/git/common-config/zuul.yaml
  19. 6
      tests/fixtures/config/multi-tenant/git/tenant-one-config/zuul.yaml
  20. 6
      tests/fixtures/config/multi-tenant/git/tenant-two-config/zuul.yaml
  21. 9
      tests/fixtures/config/one-job-project/git/common-config/zuul.yaml
  22. 12
      tests/fixtures/config/openstack/git/project-config/zuul.yaml
  23. 6
      tests/fixtures/config/requirements/email/git/common-config/zuul.yaml
  24. 6
      tests/fixtures/config/requirements/newer-than/git/common-config/zuul.yaml
  25. 6
      tests/fixtures/config/requirements/older-than/git/common-config/zuul.yaml
  26. 10
      tests/fixtures/config/requirements/reject-username/git/common-config/zuul.yaml
  27. 22
      tests/fixtures/config/requirements/reject/git/common-config/zuul.yaml
  28. 13
      tests/fixtures/config/requirements/state/git/common-config/zuul.yaml
  29. 6
      tests/fixtures/config/requirements/username/git/common-config/zuul.yaml
  30. 7
      tests/fixtures/config/requirements/vote1/git/common-config/zuul.yaml
  31. 14
      tests/fixtures/config/requirements/vote2/git/common-config/zuul.yaml
  32. 119
      tests/fixtures/config/single-tenant/git/common-config/zuul.yaml
  33. 3
      tests/fixtures/config/single-tenant/git/layout-disabled-at/zuul.yaml
  34. 6
      tests/fixtures/config/single-tenant/git/layout-dont-ignore-ref-deletes/zuul.yaml
  35. 4
      tests/fixtures/config/single-tenant/git/layout-footer-message/zuul.yaml
  36. 3
      tests/fixtures/config/single-tenant/git/layout-idle/zuul.yaml
  37. 4
      tests/fixtures/config/single-tenant/git/layout-inheritance/zuul.yaml
  38. 4
      tests/fixtures/config/single-tenant/git/layout-irrelevant-files/zuul.yaml
  39. 3
      tests/fixtures/config/single-tenant/git/layout-mutex-reconfiguration/zuul.yaml
  40. 3
      tests/fixtures/config/single-tenant/git/layout-mutex/zuul.yaml
  41. 6
      tests/fixtures/config/single-tenant/git/layout-no-timer/zuul.yaml
  42. 24
      tests/fixtures/config/single-tenant/git/layout-repo-deleted/zuul.yaml
  43. 24
      tests/fixtures/config/single-tenant/git/layout-smtp/zuul.yaml
  44. 25
      tests/fixtures/config/single-tenant/git/layout-tags/zuul.yaml
  45. 5
      tests/fixtures/config/single-tenant/git/layout-timer-smtp/zuul.yaml
  46. 6
      tests/fixtures/config/single-tenant/git/layout-timer/zuul.yaml
  47. 4
      tests/fixtures/config/success-url/git/common-config/zuul.yaml
  48. 17
      tests/fixtures/config/templated-project/git/common-config/zuul.yaml
  49. 65
      tests/unit/test_model.py
  50. 111
      tests/unit/test_scheduler.py
  51. 36
      zuul/configloader.py
  52. 66
      zuul/manager/__init__.py
  53. 338
      zuul/model.py
  54. 7
      zuul/scheduler.py

@ -771,8 +771,11 @@ given pipeline. Within the pipeline section, the jobs that should be
executed are listed. If a job is entered as a dictionary key, then
jobs contained within that key are only executed if the key job
succeeds. In the above example, project-unittest, project-pep8, and
project-pyflakes are only executed if project-merge succeeds. This
can help avoid running unnecessary jobs.
project-pyflakes are only executed if project-merge succeeds.
Furthermore, project-finaltest is executed only if project-unittest,
project-pep8 and project-pyflakes all succeed. This can help avoid
running unnecessary jobs while maximizing parallelism. It is also
useful when distributing results between jobs.
The special job named ``noop`` is internal to Zuul and will always
return ``SUCCESS`` immediately. This can be useful if you require

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -17,8 +16,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -41,7 +39,7 @@
pre-run: pre
post-run: post
vars:
flagpath: "{{zuul._test.test_root}}/{{zuul.uuid}}.flag"
flagpath: '{{zuul._test.test_root}}/{{zuul.uuid}}.flag'
roles:
- zuul: bare-role

@ -4,7 +4,6 @@
- project:
name: org/project
check:
jobs:
- python27

@ -0,0 +1,73 @@
- pipeline:
name: gate
manager: dependent
success-message: Build succeeded (gate).
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
- job:
name: A
- job:
name: B
- job:
name: C
- job:
name: D
- job:
name: E
- job:
name: F
- job:
name: G
- project:
name: org/project
gate:
jobs:
# Job dependencies, starting with A
# A
# / \
# B C
# / \ / \
# D F E
# |
# G
# This is intentionally not listed in the natural order to
# ensure that we can reference dependencies before they are
# defined.
- E:
dependencies: C
- A
- B:
dependencies: A
- C:
dependencies: A
- F:
dependencies:
- B
- C
- D:
dependencies: B
- G:
dependencies: F

@ -0,0 +1,8 @@
- tenant:
name: tenant-one
source:
gerrit:
config-repos:
- common-config
project-repos:
- org/project

@ -2,8 +2,7 @@
name: dup1
manager: independent
success-message: Build succeeded (dup1).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: change-restored
@ -18,8 +17,7 @@
name: dup2
manager: independent
success-message: Build succeeded (dup2).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: change-restored
@ -39,7 +37,6 @@
queue: integrated
jobs:
- project-test1
dup2:
queue: integrated
jobs:

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -17,8 +16,7 @@
name: tenant-one-gate
manager: dependent
success-message: Build succeeded (tenant-one-gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -17,8 +16,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -37,16 +35,13 @@
precedence: high
- job:
name:
project-test1
name: project-test1
- job:
name:
project-test2
name: project-test2
- job:
name:
project-merge
name: project-merge
hold-following-changes: true
- project:
@ -75,6 +70,6 @@
merge-mode: cherry-pick
gate:
jobs:
- project-merge:
jobs:
- project-test1
- project-merge
- project-test1:
dependencies: project-merge

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -14,8 +13,7 @@
verified: -1
- job:
name:
python27
name: python27
nodes:
- name: controller
image: ubuntu-trusty

@ -2,8 +2,7 @@
name: tenant-one-gate
manager: dependent
success-message: Build succeeded (tenant-one-gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -28,8 +27,7 @@
image: controller-image
- job:
name:
project1-test1
name: project1-test1
- project:
name: org/project1

@ -2,8 +2,7 @@
name: tenant-two-gate
manager: dependent
success-message: Build succeeded (tenant-two-gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -28,8 +27,7 @@
image: controller-image
- job:
name:
project2-test1
name: project2-test1
- project:
name: org/project2

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -17,8 +16,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -39,8 +37,7 @@
- pipeline:
name: post
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: ref-updated

@ -1,11 +1,8 @@
# Pipeline definitions
- pipeline:
name: check
manager: independent
success-message: Build succeeded (check).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -20,8 +17,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -39,8 +35,6 @@
verified: 0
precedence: high
# Job definitions
- job:
name: base
timeout: 30
@ -78,8 +72,6 @@
- openstack/keystone
- openstack/nova
# Project definitions
- project:
name: openstack/nova
templates:

@ -1,8 +1,7 @@
- pipeline:
name: pipeline
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -19,8 +18,7 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added

@ -1,8 +1,7 @@
- pipeline:
name: pipeline
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -20,8 +19,7 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added

@ -1,8 +1,7 @@
- pipeline:
name: pipeline
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -20,8 +19,7 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added

@ -1,11 +1,10 @@
- pipeline:
name: pipeline
manager: independent
source:
gerrit
source: gerrit
reject:
approval:
- username: 'jenkins'
- username: jenkins
trigger:
gerrit:
- event: comment-added
@ -19,13 +18,12 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
reject-approval:
- username: 'jenkins'
- username: jenkins
success:
gerrit:
verified: 1

@ -1,15 +1,18 @@
- pipeline:
name: pipeline
manager: independent
source:
gerrit
source: gerrit
require:
approval:
- username: jenkins
verified: [1, 2]
verified:
- 1
- 2
reject:
approval:
- verified: [-1, -2]
- verified:
- -1
- -2
trigger:
gerrit:
- event: comment-added
@ -23,16 +26,19 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
require-approval:
- username: jenkins
verified: [1, 2]
verified:
- 1
- 2
reject-approval:
- verified: [-1, -2]
- verified:
- -1
- -2
success:
gerrit:
verified: 1

@ -1,10 +1,9 @@
- pipeline:
name: current-check
manager: independent
source:
gerrit
source: gerrit
require:
current-patchset: True
current-patchset: true
trigger:
gerrit:
- event: patchset-created
@ -19,10 +18,9 @@
- pipeline:
name: open-check
manager: independent
source:
gerrit
source: gerrit
require:
open: True
open: true
trigger:
gerrit:
- event: patchset-created
@ -37,8 +35,7 @@
- pipeline:
name: status-check
manager: independent
source:
gerrit
source: gerrit
require:
status: NEW
trigger:

@ -1,8 +1,7 @@
- pipeline:
name: pipeline
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -19,8 +18,7 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added

@ -1,4 +1,3 @@
- pipeline:
name: pipeline
manager: independent
@ -6,8 +5,7 @@
approval:
- username: jenkins
verified: 1
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -21,8 +19,7 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added

@ -4,9 +4,10 @@
require:
approval:
- username: jenkins
verified: [1, 2]
source:
gerrit
verified:
- 1
- 2
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -20,14 +21,15 @@
- pipeline:
name: trigger
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
require-approval:
- username: jenkins
verified: [1, 2]
verified:
- 1
- 2
success:
gerrit:
verified: 1

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -17,8 +16,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -39,8 +37,7 @@
- pipeline:
name: post
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: ref-updated
@ -49,8 +46,7 @@
- pipeline:
name: experimental
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -107,23 +103,26 @@
- job:
name: project-testfile
files:
- '.*-requires'
- .*-requires
- project:
name: org/project
check:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
gate:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project-testfile
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
- project-testfile:
dependencies: project-merge
post:
jobs:
- project-post
@ -132,48 +131,58 @@
name: org/project1
check:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project1-project2-integration
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
- project1-project2-integration:
dependencies: project-merge
gate:
queue: integrated
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project1-project2-integration
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
- project1-project2-integration:
dependencies: project-merge
- project:
name: org/project2
gate:
queue: integrated
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project1-project2-integration
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
- project1-project2-integration:
dependencies: project-merge
- project:
name: org/project3
check:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project1-project2-integration
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
- project1-project2-integration:
dependencies: project-merge
gate:
queue: integrated
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project1-project2-integration
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
- project1-project2-integration:
dependencies: project-merge
post:
jobs:
- project-post
@ -182,9 +191,9 @@
name: org/experimental-project
experimental:
jobs:
- project-merge:
jobs:
- experimental-project-test
- project-merge
- experimental-project-test:
dependencies: project-merge
- project:
name: org/noop-project
@ -199,16 +208,18 @@
name: org/nonvoting-project
check:
jobs:
- nonvoting-project-merge:
jobs:
- nonvoting-project-test1
- nonvoting-project-test2
- nonvoting-project-merge
- nonvoting-project-test1:
dependencies: nonvoting-project-merge
- nonvoting-project-test2:
dependencies: nonvoting-project-merge
gate:
jobs:
- nonvoting-project-merge:
jobs:
- nonvoting-project-test1
- nonvoting-project-test2
- nonvoting-project-merge
- nonvoting-project-test1:
dependencies: nonvoting-project-merge
- nonvoting-project-test2:
dependencies: nonvoting-project-merge
- project:
name: org/no-jobs-project

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created

@ -1,13 +1,12 @@
- pipeline:
name: post
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: ref-updated
ref: ^(?!refs/).*$
ignore-deletes: False
ignore-deletes: false
- job:
name: project-post
@ -20,4 +19,3 @@
post:
jobs:
- project-post

@ -2,8 +2,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
failure-message: Build failed. For information on how to proceed, see http://wiki.example.org/Test_Failures
footer-message: For CI problems and help debugging, contact ci@example.org
trigger:
@ -35,4 +34,3 @@
gate:
jobs:
- project-test1

@ -1,8 +1,7 @@
- pipeline:
name: periodic
manager: independent
source:
gerrit
source: gerrit
trigger:
timer:
- time: '* * * * * */1'

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -13,7 +12,6 @@
gerrit:
verified: -1
- job:
name: project-test-irrelevant-starts-empty

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -13,7 +12,6 @@
gerrit:
verified: -1
- job:
name: project-test-irrelevant-files

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -18,8 +17,7 @@
manager: independent
# Trigger is required, set it to one that is a noop
# during tests that check the timer trigger.
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: ref-updated

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -17,8 +16,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -60,13 +58,15 @@
name: org/delete-project
check:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
gate:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -23,8 +22,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -69,13 +67,15 @@
name: org/project
check:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge
gate:
jobs:
- project-merge:
jobs:
- project-test1
- project-test2
- project-merge
- project-test1:
dependencies: project-merge
- project-test2:
dependencies: project-merge

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -34,19 +33,23 @@
check:
jobs:
- merge:
jobs:
- test1
- test2
- integration
tags:
- extratag
- test1:
dependencies: merge
- test2:
dependencies: merge
- integration:
dependencies: merge
- project:
name: org/project2
check:
jobs:
- merge:
jobs:
- test1
- test2
- integration
- merge
- test1:
dependencies: merge
- test2:
dependencies: merge
- integration:
dependencies: merge

@ -1,8 +1,7 @@
- pipeline:
name: periodic
manager: independent
source:
gerrit
source: gerrit
trigger:
timer:
- time: '* * * * * */1'
@ -10,7 +9,7 @@
smtp:
to: alternative_me@example.com
from: zuul_from@example.com
subject: 'Periodic check for {change.project} succeeded'
subject: Periodic check for {change.project} succeeded
- job:
name: project-bitrot-stable-old

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -16,8 +15,7 @@
- pipeline:
name: periodic
manager: independent
source:
gerrit
source: gerrit
trigger:
timer:
- time: '* * * * * */1'

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -18,7 +17,6 @@
gerrit:
verified: -1
- job:
name: docs-draft-test
success-url: http://docs-draft.example.org/{build.parameters[LOG_PATH]}/publish-docs/

@ -1,8 +1,7 @@
- pipeline:
name: check
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: patchset-created
@ -17,8 +16,7 @@
name: gate
manager: dependent
success-message: Build succeeded (gate).
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: comment-added
@ -39,8 +37,7 @@
- pipeline:
name: post
manager: independent
source:
gerrit
source: gerrit
trigger:
gerrit:
- event: ref-updated<