Restrict genesis build to run on docker node (fuel)
[releng.git] / jjb / genesis / genesis.yml
1 - project:
2     name: genesis
3     jobs:
4         - 'genesis-test'
5         - 'genesis-daily-master'
6         - 'genesis-merge'
7         - 'genesis-verify'
8
9     # stream:    branch with - in place of / (eg. stable-helium)
10     # branch:    branch (eg. stable/helium)
11     stream:
12         - master:
13             branch: 'master'
14
15     project: 'genesis'
16     somevar: 'foo'
17
18 - job-template:
19     name: genesis-test
20
21     project-type: freestyle
22
23     logrotate:
24         daysToKeep: 30
25         numToKeep: 10
26         artifactDaysToKeep: -1
27         artifactNumToKeep: -1
28
29     builders:
30         - shell: |
31             echo "Hello world from genesis"
32
33 - job-template:
34     name: 'genesis-daily-master'
35
36     # Job template for daily builders
37     #
38     # Required Variables:
39     #     stream:    branch with - in place of / (eg. stable)
40     #     branch:    branch (eg. stable)
41
42     project-type: freestyle
43     varsetabove: '{somevar}'
44
45     logrotate:
46         daysToKeep: '{build-days-to-keep}'
47         numToKeep: '{build-num-to-keep}'
48         artifactDaysToKeep: '{build-artifact-days-to-keep}'
49         artifactNumToKeep: '{build-artifact-num-to-keep}'
50
51     wrappers:
52         - ssh-agent-credentials:
53             user: '{ssh-credentials}'
54
55     triggers:
56         - timed: 'H H * * *'
57
58     prebuilders:
59         - test-macro
60
61     builders:
62         - shell: |
63             echo "Hello world from genesis {somevar} daily"
64         - test-macro
65
66     postbuilders:
67         - test-macro
68
69 - job-template:
70     name: 'genesis-verify'
71
72     project-type: freestyle
73     node: fuel
74
75     logrotate:
76         daysToKeep: 30
77         numToKeep: 10
78         artifactDaysToKeep: -1
79         artifactNumToKeep: -1
80
81     parameters:
82         - project-parameter:
83             project: '{project}'
84         - gerrit-parameter:
85             branch: 'master'
86     scm:
87         - gerrit-trigger-scm:
88             credentials-id: '{ssh-credentials}'
89             refspec: '$GERRIT_REFSPEC'
90             choosing-strategy: 'gerrit'
91
92     wrappers:
93         - ssh-agent-credentials:
94             user: '{ssh-credentials}'
95
96     triggers:
97         - gerrit:
98             trigger-on:
99                 - patchset-created-event:
100                     exclude-drafts: 'false'
101                     exclude-trivial-rebase: 'false'
102                     exclude-no-code-change: 'false'
103                 - draft-published-event
104                 - comment-added-contains-event:
105                     comment-contains-value: 'recheck'
106             projects:
107               - project-compare-type: 'ANT'
108                 project-pattern: 'releng'
109                 branches:
110                   - branch-compare-type: 'ANT'
111                     branch-pattern: '**/master'
112                 file-paths:
113                     - compare-type: ANT
114                       pattern: jjb/**
115                     - compare-type: ANT
116                       pattern: jjb-templates/**
117
118     builders:
119         - shell: |
120             echo foo
121             echo bar
122
123
124 - job-template:
125     name: 'genesis-merge'
126
127     # builder-merge job to run JJB update
128     #
129     # This job's purpose is to update all the JJB
130
131     project-type: freestyle
132     node: fuel
133
134     logrotate:
135         daysToKeep: 30
136         numToKeep: 40
137         artifactDaysToKeep: -1
138         artifactNumToKeep: 5
139
140     parameters:
141         - project-parameter:
142             project: '{project}'
143         - gerrit-parameter:
144             branch: 'master'
145
146     scm:
147         - gerrit-trigger-scm:
148             credentials-id: '{ssh-credentials}'
149             refspec: ''
150             choosing-strategy: 'default'
151
152     wrappers:
153         - ssh-agent-credentials:
154             user: '{ssh-credentials}'
155
156     triggers:
157         - gerrit:
158             trigger-on:
159                 - change-merged-event
160                 - comment-added-contains-event:
161                     comment-contains-value: 'remerge'
162             projects:
163               - project-compare-type: 'ANT'
164                 project-pattern: 'releng'
165                 branches:
166                     - branch-compare-type: 'ANT'
167                       branch-pattern: '**/master'
168                 file-paths:
169                     - compare-type: ANT
170                       pattern: jjb/**
171
172     builders:
173         - shell: |
174             echo foo
175             echo bar