summaryrefslogtreecommitdiff
path: root/tests/fixtures/layouts/serial.yaml
diff options
context:
space:
mode:
authorJames E. Blair <jeblair@redhat.com>2020-04-24 11:03:48 -0700
committerJames E. Blair <jeblair@redhat.com>2020-04-29 14:59:15 -0700
commit22640baef4d33c80135aace1d11a223278b02e57 (patch)
treebd7f7ede79144e62a4c1db03bcdc9daf131b1a0a /tests/fixtures/layouts/serial.yaml
parentccddc37fa04dc66ab29b9bc97cc63b0665e64430 (diff)
downloadzuul-22640baef4d33c80135aace1d11a223278b02e57.tar.gz
Add serial pipeline manager
This is designed to handle the case where we want: * The pipeline to be triggered by changes so results report back to the change. * Triggered on change merged. * Jobs with file matchers so that if a subsystem is changed, only the deployment job for that subsystem is run. * Every change is processed in strict sequence. This is designed to accomodate a deployment pipeline with the above constraints. The pipeline manager hierarchy is getting complicated; mark the base class as abstract, and also move the shared-queue methods into an intermediate abstract class. These are shared by both serial and dependent managers. Change-Id: I3c5f3b2f6298292c5c25665923e3a10b07be5419
Diffstat (limited to 'tests/fixtures/layouts/serial.yaml')
-rw-r--r--tests/fixtures/layouts/serial.yaml48
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/fixtures/layouts/serial.yaml b/tests/fixtures/layouts/serial.yaml
new file mode 100644
index 000000000..5a744ce82
--- /dev/null
+++ b/tests/fixtures/layouts/serial.yaml
@@ -0,0 +1,48 @@
+- pipeline:
+ name: deploy
+ manager: serial
+ trigger:
+ gerrit:
+ - event: change-merged
+ post-review: True
+ success:
+ gerrit: {}
+ failure:
+ gerrit: {}
+
+- job:
+ name: base
+ parent: null
+ nodeset:
+ nodes:
+ - label: ubuntu-xenial
+ name: controller
+
+- job:
+ name: job1
+ run: playbooks/job1.yaml
+
+- job:
+ name: job2
+ run: playbooks/job2.yaml
+
+- project:
+ name: org/project
+ deploy:
+ jobs:
+ - job1
+ - job2
+
+- project:
+ name: org/project1
+ deploy:
+ queue: shared
+ jobs:
+ - job1
+
+- project:
+ name: org/project2
+ deploy:
+ queue: shared
+ jobs:
+ - job1