Remove integration-*-basic-* jobs
[releng/builder.git] / jjb / integration / integration-test-jobs.yaml
1
2 - project:
3     name: integration-test-jobs
4     jobs:
5         - 'integration-verify-python'
6         - 'integration-csit-verify-1node-library'
7         - 'integration-distribution-test-{stream}'
8         - 'integration-patch-test-{stream}'
9         - 'integration-multipatch-test-{stream}'
10
11     stream:
12         - boron:
13             branch: 'master'
14             jdk: 'openjdk8'
15             jre: 'openjdk8'
16             csit-list: >
17                 aaa-csit-1node-authn-only-{stream},
18                 aaa-csit-1node-authn-all-{stream},
19                 bgpcep-csit-1node-userfeatures-only-{stream},
20                 bgpcep-csit-1node-userfeatures-all-{stream},
21                 capwap-csit-1node-ac-only-{stream},
22                 capwap-csit-1node-ac-all-{stream},
23                 controller-csit-3node-clustering-only-{stream},
24                 integration-distribution-deploy-{stream},
25                 integration-distribution-offline-{stream},
26                 l2switch-csit-1node-switch-only-{stream},
27                 l2switch-csit-1node-switch-all-{stream},
28                 l2switch-csit-1node-scalability-only-{stream},
29                 l2switch-csit-1node-scalability-all-{stream},
30                 lispflowmapping-csit-1node-msmr-only-{stream},
31                 lispflowmapping-csit-1node-msmr-all-{stream},
32                 nemo-csit-1node-engine-all-{stream},
33                 nemo-csit-1node-engine-only-{stream},
34                 netconf-csit-1node-userfeatures-all-{stream},
35                 netconf-csit-1node-userfeatures-only-{stream},
36                 nic-csit-1node-basic-all-{stream},
37                 nic-csit-1node-basic-only-{stream},
38                 openflowplugin-csit-1node-flow-services-only-{stream},
39                 openflowplugin-csit-1node-flow-services-lithium-redesign-only-{stream},
40                 openflowplugin-csit-1node-flow-services-all-{stream},
41                 openflowplugin-csit-1node-scalability-only-{stream},
42                 openflowplugin-csit-1node-scalability-lithium-redesign-only-{stream},
43                 openflowplugin-csit-1node-scalability-all-{stream},
44                 openflowplugin-csit-1node-cbench-performance-only-{stream},
45                 openflowplugin-csit-1node-cbench-performance-lithium-redesign-only-{stream},
46                 openflowplugin-csit-1node-config-performance-only-{stream},
47                 openflowplugin-csit-1node-config-performance-lithium-redesign-only-{stream},
48                 openflowplugin-csit-3node-clustering-helium-design-only-{stream},
49                 openflowplugin-csit-3node-clustering-only-{stream},
50                 ovsdb-csit-3node-clustering-only-{stream},
51                 ovsdb-csit-1node-netvirt-only-{stream},
52                 ovsdb-csit-1node-netvirt-all-{stream},
53                 ovsdb-csit-1node-southbound-only-{stream},
54                 ovsdb-csit-1node-southbound-all-{stream},
55                 packetcable-csit-1node-pcmm-only-{stream},
56                 packetcable-csit-1node-pcmm-all-{stream},
57                 snmp-csit-1node-basic-only-{stream},
58                 snmp-csit-1node-basic-all-{stream},
59                 sxp-csit-1node-basic-only-{stream},
60                 sxp-csit-1node-basic-all-{stream},
61                 sxp-csit-1node-filtering-only-{stream},
62                 sxp-csit-1node-filtering-all-{stream},
63                 sxp-csit-1node-topology-only-{stream},
64                 sxp-csit-1node-topology-all-{stream},
65                 topoprocessing-csit-1node-topology-operations-all-{stream},
66                 topoprocessing-csit-1node-topology-operations-only-{stream},
67                 tsdr-csit-1node-hbase-datastore-only-{stream},
68                 usc-csit-1node-channel-only-{stream},
69                 usc-csit-1node-channel-all-{stream},
70                 vpnservice-csit-1node-vpnservice-only-{stream},
71                 vpnservice-csit-1node-vpnservice-all-{stream},
72                 vtn-csit-1node-manager-only-{stream}
73
74         - beryllium:
75             branch: 'stable/beryllium'
76             jdk: 'openjdk7'
77             jre: 'openjdk7'
78             csit-list: >
79                 aaa-csit-1node-authn-only-{stream},
80                 aaa-csit-1node-authn-all-{stream},
81                 bgpcep-csit-1node-userfeatures-only-{stream},
82                 bgpcep-csit-1node-userfeatures-all-{stream},
83                 capwap-csit-1node-ac-only-{stream},
84                 capwap-csit-1node-ac-all-{stream},
85                 controller-csit-3node-clustering-only-{stream},
86                 integration-distribution-offline-{stream},
87                 integration-distribution-deploy-{stream},
88                 l2switch-csit-1node-switch-only-{stream},
89                 l2switch-csit-1node-switch-all-{stream},
90                 l2switch-csit-1node-scalability-only-{stream},
91                 l2switch-csit-1node-scalability-all-{stream},
92                 lispflowmapping-csit-1node-msmr-only-{stream},
93                 lispflowmapping-csit-1node-msmr-all-{stream},
94                 nemo-csit-1node-engine-all-{stream},
95                 nemo-csit-1node-engine-only-{stream},
96                 netconf-csit-1node-userfeatures-all-{stream},
97                 netconf-csit-1node-userfeatures-only-{stream},
98                 nic-csit-1node-basic-all-{stream},
99                 nic-csit-1node-basic-only-{stream},
100                 openflowplugin-csit-1node-flow-services-only-{stream},
101                 openflowplugin-csit-1node-flow-services-lithium-redesign-only-{stream},
102                 openflowplugin-csit-1node-flow-services-all-{stream},
103                 openflowplugin-csit-1node-scalability-only-{stream},
104                 openflowplugin-csit-1node-scalability-lithium-redesign-only-{stream},
105                 openflowplugin-csit-1node-scalability-all-{stream},
106                 openflowplugin-csit-1node-cbench-performance-only-{stream},
107                 openflowplugin-csit-1node-cbench-performance-lithium-redesign-only-{stream},
108                 openflowplugin-csit-1node-config-performance-only-{stream},
109                 openflowplugin-csit-1node-config-performance-lithium-redesign-only-{stream},
110                 openflowplugin-csit-3node-clustering-helium-design-only-{stream},
111                 openflowplugin-csit-3node-clustering-only-{stream},
112                 ovsdb-csit-3node-clustering-only-{stream},
113                 ovsdb-csit-1node-netvirt-only-{stream},
114                 ovsdb-csit-1node-netvirt-all-{stream},
115                 ovsdb-csit-1node-southbound-only-{stream},
116                 ovsdb-csit-1node-southbound-all-{stream},
117                 packetcable-csit-1node-pcmm-only-{stream},
118                 packetcable-csit-1node-pcmm-all-{stream},
119                 snmp-csit-1node-basic-only-{stream},
120                 snmp-csit-1node-basic-all-{stream},
121                 sxp-csit-1node-basic-only-{stream},
122                 sxp-csit-1node-basic-all-{stream},
123                 sxp-csit-1node-filtering-only-{stream},
124                 sxp-csit-1node-filtering-all-{stream},
125                 sxp-csit-1node-topology-only-{stream},
126                 sxp-csit-1node-topology-all-{stream},
127                 topoprocessing-csit-1node-topology-operations-all-{stream},
128                 topoprocessing-csit-1node-topology-operations-only-{stream},
129                 tsdr-csit-1node-hbase-datastore-only-{stream},
130                 usc-csit-1node-channel-only-{stream},
131                 usc-csit-1node-channel-all-{stream},
132                 vpnservice-csit-1node-vpnservice-only-{stream},
133                 vpnservice-csit-1node-vpnservice-all-{stream},
134                 vtn-csit-1node-manager-only-{stream},
135                 vtn-csit-1node-manager-all-{stream},
136                 vtn-csit-1node-coordinator-only-{stream}
137
138         - stable-lithium:
139             branch: 'stable/lithium'
140             jdk: 'openjdk7'
141             jre: 'openjdk7'
142             csit-list: >
143                 aaa-csit-1node-authn-only-{stream},
144                 aaa-csit-1node-authn-all-{stream},
145                 bgpcep-csit-1node-userfeatures-only-{stream},
146                 bgpcep-csit-1node-userfeatures-all-{stream},
147                 capwap-csit-1node-ac-only-{stream},
148                 capwap-csit-1node-ac-all-{stream},
149                 controller-csit-3node-clustering-only-{stream},
150                 integration-distribution-offline-{stream},
151                 l2switch-csit-1node-switch-only-{stream},
152                 l2switch-csit-1node-switch-all-{stream},
153                 l2switch-csit-1node-scalability-only-{stream},
154                 l2switch-csit-1node-scalability-all-{stream},
155                 lispflowmapping-csit-1node-all-only-{stream},
156                 lispflowmapping-csit-1node-all-all-{stream},
157                 netconf-csit-1node-userfeatures-all-{stream},
158                 netconf-csit-1node-userfeatures-only-{stream},
159                 nic-csit-1node-basic-all-{stream},
160                 nic-csit-1node-basic-only-{stream},
161                 openflowplugin-csit-1node-flow-services-only-{stream},
162                 openflowplugin-csit-1node-flow-services-lithium-redesign-only-{stream},
163                 openflowplugin-csit-1node-flow-services-all-{stream},
164                 openflowplugin-csit-1node-scalability-only-{stream},
165                 openflowplugin-csit-1node-scalability-lithium-redesign-only-{stream},
166                 openflowplugin-csit-1node-scalability-all-{stream},
167                 openflowplugin-csit-1node-cbench-performance-only-{stream},
168                 openflowplugin-csit-1node-cbench-performance-lithium-redesign-only-{stream},
169                 openflowplugin-csit-1node-config-performance-only-{stream},
170                 openflowplugin-csit-1node-config-performance-lithium-redesign-only-{stream},
171                 ovsdb-csit-1node-netvirt-only-{stream},
172                 ovsdb-csit-1node-netvirt-all-{stream},
173                 ovsdb-csit-1node-southbound-only-{stream},
174                 ovsdb-csit-1node-southbound-all-{stream},
175                 snmp-csit-1node-basic-only-{stream},
176                 snmp-csit-1node-basic-all-{stream},
177                 usc-csit-1node-channel-only-{stream},
178                 usc-csit-1node-channel-all-{stream},
179                 vpnservice-csit-1node-vpnservice-only-{stream},
180                 vpnservice-csit-1node-vpnservice-all-{stream},
181                 vtn-csit-1node-manager-li-only-{stream},
182                 vtn-csit-1node-manager-li-all-{stream},
183                 vtn-csit-1node-coordinator-only-{stream}
184
185
186 # Template: integration-verify-python
187 # Goal: Verify python scripts correct syntax
188 # Operation: This job template performs a python tox check on any integration/test patch
189
190 - job-template:
191     name: 'integration-verify-python'
192
193     project-type: freestyle
194     node: dynamic_verify
195     concurrent: true
196
197     logrotate:
198         daysToKeep: '{build-days-to-keep}'
199         numToKeep: '{build-num-to-keep}'
200         artifactDaysToKeep: '{build-artifact-days-to-keep}'
201         artifactNumToKeep: '{build-artifact-num-to-keep}'
202
203     parameters:
204         - project-parameter:
205             project: 'integration/test'
206         - integration-patch-refspec:
207             branch: '$GERRIT_REFSPEC'
208
209     scm:
210         - integration-gerrit-scm:
211             credentials-id: '{ssh-credentials}'
212             basedir: 'test'
213             refspec: '$PATCHREFSPEC'
214             branch: 'master'
215
216     wrappers:
217         - build-timeout
218         - ssh-agent-credentials:
219             users:
220                 - '{ssh-credentials}'
221
222     triggers:
223         - integration-trigger-patch-submitted:
224             name: 'integration/test'
225             branch: 'master'
226             pattern: '**'
227
228     builders:
229         - shell: |
230             virtualenv $WORKSPACE/venv-tox
231             source $WORKSPACE/venv-tox/bin/activate
232             pip install tox argparse
233             tox --version
234             cd $WORKSPACE/test
235             tox
236
237     publishers:
238         - email-notification:
239             email-prefix: '[integration]'
240
241 # Template: integration-csit-verify-1node-library
242 # Goal: Verify changes in csit folder not covered by projects suite verify jobs (e.g. libraries or variables)
243 # Operation: This job template performs a base openflow test when there is a change in the libraries folder
244
245 - job-template:
246     name: 'integration-csit-verify-1node-library'
247
248     project-type: freestyle
249     node: dynamic_robot
250
251     logrotate:
252         daysToKeep: '{build-days-to-keep}'
253         numToKeep: '{build-num-to-keep}'
254         artifactDaysToKeep: '{build-artifact-days-to-keep}'
255         artifactNumToKeep: '{build-artifact-num-to-keep}'
256
257     parameters:
258         - project-parameter:
259             project: 'integration/test'
260         - integration-branch:
261             branch: 'stable/beryllium'
262         - integration-bundleurl:
263             bundleurl: 'last'
264         - integration-controller-scope:
265             controller-scope: 'only'
266         - integration-controller-features:
267             controller-features: >
268                 odl-clustering-test-app,
269                 odl-openflowplugin-flow-services-ui,
270                 odl-bgpcep-pcep,
271                 odl-bgpcep-bgp,
272                 odl-netconf-connector-all
273         - integration-test-options:
274             test-options: '-e adsal -v TIMEOUT_BUG_4220:10s'
275         - integration-test-plan:
276             test-plan: 'test-libraries.txt'
277         - integration-patch-refspec:
278             branch: '$GERRIT_REFSPEC'
279         - integration-jdk-version:
280             jdkversion: 'openjdk7'
281             # TODO: Switch to openjdk8 from Boron on.
282
283     scm:
284         - integration-gerrit-scm:
285             credentials-id: '{ssh-credentials}'
286             basedir: 'test'
287             refspec: '$PATCHREFSPEC'
288             branch: 'master'
289
290     wrappers:
291         - build-timeout
292         - integration-jclouds-controller-mininet:
293             controller-vms: 1
294             mininet-image: '{mininet-image}'
295             mininet-vms: '{mininet-vms}'
296             mininet-cloud-name: '{mininet-cloud-name}'
297         - ssh-agent-credentials:
298             users:
299                 - '{ssh-credentials}'
300
301     triggers:
302         - integration-trigger-patch-submitted:
303             name: 'integration/test'
304             branch: 'master'
305             pattern: 'csit/libraries/*'
306
307     builders:
308         - integration-cleanup-workspace
309         - integration-install-robotframework
310         - inject:
311             properties-file: 'env.properties'
312         - integration-get-slave-addresses
313         - inject:
314             properties-file: 'slave_addresses.txt'
315         - integration-get-bundle-vars
316         - inject:
317             properties-file: 'bundle_vars.txt'
318         - integration-deploy-controller-run-test
319         - integration-cleanup-tmp
320
321     publishers:
322         - integration-robot:
323             unstable-if: 0.0
324             pass-if: 100.0
325         - archive:
326             artifacts: '*.log,*.log.xz'
327         - email-notification:
328             email-prefix: '[integration]'
329
330 # Template: integration-distribution-test-{stream}
331 # Goal: Verify a distribution through all system test available
332 # Operation: This daily job template takes a distribution and passes all available system test
333
334 - job-template:
335     name: 'integration-distribution-test-{stream}'
336
337     project-type: freestyle
338     node: dynamic_verify
339
340     logrotate:
341         daysToKeep: '{build-days-to-keep}'
342         numToKeep: '{build-num-to-keep}'
343         artifactDaysToKeep: '{build-artifact-days-to-keep}'
344         artifactNumToKeep: '{build-artifact-num-to-keep}'
345
346     parameters:
347         - integration-bundleurl:
348             bundleurl: 'last'
349         - integration-jdk-version:
350             jdkversion: '{jre}'
351
352     triggers:
353         - timed: 'H H * * 6'
354
355     builders:
356         - trigger-builds:
357             - project: '{csit-list}'
358               block: true
359               predefined-parameters:
360                   BUNDLEURL=$BUNDLEURL
361
362     publishers:
363         - email-notification:
364             email-prefix: '[integration]'
365
366 # Template: integration-patch-test-{stream}
367 # Goal: Build a patch and run all available system test on a distribution containing the change
368 # Operation: This job template builds a patch, creates a distribution containing the patch, and
369 # triggers the distribution test when test-integration is used in gerrit comments
370
371 - job-template:
372     name: 'integration-patch-test-{stream}'
373
374     project-type: maven
375     node: dynamic_verify
376     jdk: '{jdk}'
377
378     logrotate:
379         daysToKeep: '{build-days-to-keep}'
380         numToKeep: '{build-num-to-keep}'
381         artifactDaysToKeep: '{build-artifact-days-to-keep}'
382         artifactNumToKeep: '{build-artifact-num-to-keep}'
383
384     parameters:
385         - gerrit-project-parameter:
386             project: '$GERRIT_PROJECT'
387         - gerrit-refspec-parameter:
388             refspec: '$GERRIT_REFSPEC'
389         - project-parameter:
390             project: '$GERRIT_PROJECT'
391         - integration-branch:
392             branch: '{branch}'
393         - integration-distribution-git-url
394
395     scm:
396         - integration-gerrit-scm:
397             credentials-id: '{ssh-credentials}'
398             basedir: '$GERRIT_PROJECT'
399             refspec: '$GERRIT_REFSPEC'
400             branch: '{branch}'
401         - integration-distribution-scm:
402             credentials-id: '{ssh-credentials}'
403             branch: '{branch}'
404
405     wrappers:
406         - build-timeout
407         - ssh-agent-credentials:
408             users:
409                 - '{ssh-credentials}'
410
411     triggers:
412         - gerrit:
413             server-name: 'OpenDaylight'
414             trigger-on:
415                 - comment-added-contains-event:
416                     comment-contains-value: 'test-integration'
417             projects:
418               - project-compare-type: 'ANT'
419                 project-pattern: '**'
420                 branches:
421                   - branch-compare-type: 'ANT'
422                     branch-pattern: '**/{branch}'
423             skip-vote:
424                 successful: true
425                 failed: true
426                 unstable: true
427                 notbuilt: true
428
429     prebuilders:
430         - integration-rebase-gerrit-patch
431         - integration-get-bundle-url
432         - inject:
433             properties-file: 'bundle.txt'
434         - wipe-org-opendaylight-repo
435         - maven-target:
436             maven-version: '{mvn33}'
437             pom: '$GERRIT_PROJECT/pom.xml'
438             goals: 'clean install -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.javadoc.skip=true -Dmaven.site.skip=true -DgenerateReports=false -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}'
439             java-opts:
440                 - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
441             settings: '{integration-settings}'
442             global-settings: '{odl-global-settings}'
443
444     maven:
445         maven-name: '{mvn33}'
446         root-pom: 'distribution/pom.xml'
447         goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
448         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
449         settings: '{integration-settings}'
450         global-settings: '{odl-global-settings}'
451         ignore-upstream-changes: true
452         post-step-run-condition: 'SUCCESS'
453
454     postbuilders:
455         - trigger-builds:
456             - project: 'integration-distribution-test-{stream}'
457               block: true
458               predefined-parameters:
459                   BUNDLEURL=$BUNDLEURL
460
461     publishers:
462         - email-notification:
463             email-prefix: '[$GERRIT_PROJECT]'
464
465 # Template: integration-multipatch-test-{stream}
466 # Goal: Build one or more patches and run all available system test on a distribution containing the change
467 # Operation: This job template checks out and builds each patch provided in job parameters, creates a distribution
468 # containing these patches, and triggers the distribution test job which includes most (if not all) available
469 # CSIT jobs
470
471 - job-template:
472     name: 'integration-multipatch-test-{stream}'
473
474     project-type: maven
475     node: dynamic_verify
476     jdk: '{jdk}'
477
478     logrotate:
479         daysToKeep: '{build-days-to-keep}'
480         numToKeep: '{build-num-to-keep}'
481         artifactDaysToKeep: '{build-artifact-days-to-keep}'
482         artifactNumToKeep: '{build-artifact-num-to-keep}'
483
484     parameters:
485         - patches-to-build-parameter:
486             patches_to_build: '$PATCHES_TO_BUILD'
487         - integration-branch:
488             branch: '{branch}'
489
490     wrappers:
491         - build-timeout
492         - ssh-agent-credentials:
493             users:
494                 - '{ssh-credentials}'
495
496     prebuilders:
497         - wipe-org-opendaylight-repo
498         - integration-multipatch-builder
499         - inject:
500             properties-file: 'bundle.txt'
501         - provide-maven-settings:
502             global-settings-file: '{odl-global-settings}'
503             settings-file: '{yangtools-settings}'
504
505
506     maven:
507         maven-name: '{mvn33}'
508         root-pom: 'patch_tester/pom.xml'
509         # TODO: Make Maven option configurable. Currently tests are not skipped, everything elase is.
510         goals: 'clean install -f patch_tester/pom.xml -Djenkins -Dcheckstyle.skip=true -Dmaven.javadoc.skip=true -Dmaven.site.skip=true -DgenerateReports=false -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}'
511         maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
512         settings: '{yangtools-settings}'
513         global-settings: '{odl-global-settings}'
514         post-step-run-condition: 'SUCCESS'
515
516     postbuilders:
517         - trigger-builds:
518             - project: 'integration-distribution-test-{stream}'
519               block: true
520               predefined-parameters:
521                   BUNDLEURL=$BUNDLEURL
522
523     publishers:
524         - email-notification:
525             email-prefix: '[integration]'