Merge "Remove autoupdate script from jjb verify job"
[releng/builder.git] / jjb / releng-jobs.yaml
1 - project:
2     name: builder-jobs
3     jobs:
4         - 'builder-verify-jjb'
5         - 'builder-verify-python'
6         - 'builder-merge'
7         - 'builder-weekly'
8         - 'builder-check-poms'
9
10     project: 'releng/builder'
11
12 - job-template:
13     name: builder-verify-jjb
14     node: jjbuilder
15
16     project-type: freestyle
17
18     logrotate:
19         daysToKeep: 7
20
21     parameters:
22         - opendaylight-infra-parameters:
23             project: '{project}'
24             branch: 'master'
25             refspec: 'refs/heads/master'
26             artifacts: '{archive-artifacts}'
27
28     scm:
29         - gerrit-trigger-scm:
30             refspec: '$GERRIT_REFSPEC'
31             choosing-strategy: 'gerrit'
32
33     wrappers:
34         - opendaylight-infra-wrappers:
35             build-timeout: '{build-timeout}'
36
37     triggers:
38         - gerrit:
39             server-name: 'OpenDaylight'
40             trigger-on:
41                 - patchset-created-event:
42                     exclude-drafts: 'false'
43                     exclude-trivial-rebase: 'false'
44                     exclude-no-code-change: 'false'
45                 - draft-published-event
46                 - comment-added-contains-event:
47                     comment-contains-value: 'recheck'
48             projects:
49               - project-compare-type: 'ANT'
50                 project-pattern: 'releng/builder'
51                 branches:
52                   - branch-compare-type: 'ANT'
53                     branch-pattern: '**/master'
54                 file-paths:
55                     - compare-type: ANT
56                       pattern: jjb/**
57                     - compare-type: ANT
58                       pattern: jjb-templates/**
59
60     builders:
61         - shell: |
62             pip freeze
63             jenkins-jobs -l DEBUG test --recursive -o archives/job_output jjb/
64             gzip archives/job_output/*
65
66         - releng-check-unicode
67
68     publishers:
69         - email-notification:
70             email-prefix: '[releng]'
71         - archive-build:
72             maven-version: '{mvn33}'
73
74 - job-template:
75     name: builder-verify-python
76     node: centos7-java-builder-2c-8g
77
78     project-type: freestyle
79
80     logrotate:
81         daysToKeep: 7
82         numToKeep: 10
83         artifactDaysToKeep: -1
84         artifactNumToKeep: -1
85
86     parameters:
87         - opendaylight-infra-parameters:
88             project: '{project}'
89             branch: 'master'
90             refspec: 'refs/heads/master'
91             artifacts: '{archive-artifacts}'
92
93     scm:
94         - gerrit-trigger-scm:
95             refspec: '$GERRIT_REFSPEC'
96             choosing-strategy: 'gerrit'
97
98     wrappers:
99         - opendaylight-infra-wrappers:
100             build-timeout: '{build-timeout}'
101
102     triggers:
103         - gerrit:
104             server-name: 'OpenDaylight'
105             trigger-on:
106                 - patchset-created-event:
107                     exclude-drafts: 'false'
108                     exclude-trivial-rebase: 'false'
109                     exclude-no-code-change: 'false'
110                 - draft-published-event
111                 - comment-added-contains-event:
112                     comment-contains-value: 'recheck'
113             projects:
114               - project-compare-type: 'ANT'
115                 project-pattern: 'releng/builder'
116                 branches:
117                   - branch-compare-type: 'ANT'
118                     branch-pattern: '**/master'
119                 file-paths:
120                     - compare-type: ANT
121                       pattern: scripts/**
122
123
124     builders:
125         - shell: |
126             virtualenv $WORKSPACE/venv
127             source $WORKSPACE/venv/bin/activate
128             pip install --upgrade pip
129             pip freeze
130             pip install flake8
131             flake8 scripts/
132
133     publishers:
134         - email-notification:
135             email-prefix: '[releng]'
136         - archive-build:
137             maven-version: '{mvn33}'
138
139 - job-template:
140     name: 'builder-merge'
141     node: jjbuilder
142
143     # builder-merge job to run JJB update
144     #
145     # This job's purpose is to update all the JJB
146
147     project-type: freestyle
148
149     logrotate:
150         daysToKeep: 7
151         numToKeep: 3
152         artifactDaysToKeep: -1
153         artifactNumToKeep: -1
154
155     parameters:
156         - opendaylight-infra-parameters:
157             project: '{project}'
158             branch: 'master'
159             refspec: 'refs/heads/master'
160             artifacts: '{archive-artifacts}'
161
162     scm:
163         - gerrit-trigger-scm:
164             refspec: ''
165             choosing-strategy: 'default'
166
167     wrappers:
168         - opendaylight-infra-wrappers:
169             build-timeout: '{build-timeout}'
170
171     triggers:
172         - gerrit:
173             server-name: 'OpenDaylight'
174             trigger-on:
175                 - change-merged-event
176                 - comment-added-contains-event:
177                     comment-contains-value: 'remerge'
178             projects:
179               - project-compare-type: 'ANT'
180                 project-pattern: 'releng/builder'
181                 branches:
182                     - branch-compare-type: 'ANT'
183                       branch-pattern: '**/master'
184                 file-paths:
185                     - compare-type: ANT
186                       pattern: jjb/**
187                     - compare-type: ANT
188                       pattern: jjb-templates/**
189
190     builders:
191         - shell: |
192             pip freeze
193             jenkins-jobs --version
194             jenkins-jobs update --recursive --delete-old --workers 4 jjb/
195
196     publishers:
197         - email-notification:
198             email-prefix: '[releng]'
199         - archive-build:
200             maven-version: '{mvn33}'
201
202 - job-template:
203     name: 'builder-weekly'
204     disabled: true
205     node: jjbuilder
206
207     # builder-weekly job to run JJB update weekly
208     #
209     # This job's purpose is to update all the JJB on a weekly (Sunday)
210     # basis with --flush-cache enabled to ensure jobs are okay
211
212     project-type: freestyle
213
214     logrotate:
215         daysToKeep: 7
216         numToKeep: 3
217         artifactDaysToKeep: -1
218         artifactNumToKeep: -1
219
220     parameters:
221         - opendaylight-infra-parameters:
222             project: '{project}'
223             branch: 'master'
224             refspec: 'refs/heads/master'
225             artifacts: '{archive-artifacts}'
226
227     scm:
228         - git-scm:
229             branch: 'master'
230
231     wrappers:
232         - opendaylight-infra-wrappers:
233             build-timeout: '{build-timeout}'
234
235     triggers:
236         - timed: 'H H * * 0'
237
238     builders:
239         - shell: |
240             jenkins-jobs --flush-cache update --recursive jjb/
241
242     publishers:
243         - email-notification:
244             email-prefix: '[releng]'
245         - archive-build:
246             maven-version: '{mvn33}'
247
248 - job-template:
249     name: builder-check-poms
250     node: centos7-java-builder-2c-8g
251
252     project-type: freestyle
253
254     logrotate:
255         daysToKeep: 1
256         numToKeep: 1
257         artifactDaysToKeep: -1
258         artifactNumToKeep: -1
259
260     parameters:
261         - opendaylight-infra-parameters:
262             project: '{project}'
263             branch: 'master'
264             refspec: 'refs/heads/master'
265             artifacts: '{archive-artifacts}'
266
267     wrappers:
268         - opendaylight-infra-wrappers:
269             build-timeout: '{build-timeout}'
270
271     triggers:
272         - timed: 'H H * * 1'
273
274     builders:
275         - shell:
276             !include-raw-escape:
277                 - include-raw-check-poms.sh
278
279     publishers:
280         - email-notification:
281             email-prefix: '[releng]'
282         - archive-build:
283             maven-version: '{mvn33}'