4 project: integration/test
5 project-name: integration-test
8 - '{project-name}-verify-tox-master'
9 - 'integration-csit-verify-1node-library'
10 - 'integration-distribution-test-{stream}'
11 - 'integration-sanity-test-{stream}'
12 - 'integration-patch-test-{stream}'
13 - 'integration-multipatch-test-{stream}'
14 - 'integration-distribution-weekly-test-trigger-{stream}'
15 - 'integration-distribution-high-frequency-test-trigger-{stream}'
17 # CSIT Lists in releng-defaults.yaml
22 csit-list: '{csit-list-nitrogen}'
23 csit-sanity-list: '{csit-sanity-list-nitrogen}'
24 csit-weekly-list: '{csit-weekly-list-nitrogen}'
25 schedule-weekly: 'H 12 * * 0'
26 csit-high-frequency-list: ''
27 schedule-high-frequency: ''
30 branch: 'stable/carbon'
34 csit-list: '{csit-list-carbon}'
35 csit-sanity-list: '{csit-sanity-list-carbon}'
36 csit-weekly-list: '{csit-weekly-list-carbon}'
37 schedule-weekly: 'H 12 * * 0'
38 csit-high-frequency-list: '{csit-high-frequency-list-carbon}'
39 schedule-high-frequency: 'H H/4 * * *'
42 branch: 'stable/boron'
46 csit-list: '{csit-list-boron}'
47 csit-sanity-list: '{csit-sanity-list-boron}'
48 csit-weekly-list: '{csit-weekly-list-boron}'
49 schedule-weekly: 'H 12 * * 0'
50 csit-high-frequency-list: ''
51 schedule-high-frequency: ''
54 tools_system_image: Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300
56 # Template: integration-csit-verify-1node-library
57 # Goal: Verify changes in csit folder not covered by projects suite verify jobs (e.g. libraries or variables)
58 # Operation: This job template performs a base openflow test when there is a change in the libraries folder
61 name: 'integration-csit-verify-1node-library'
63 project-type: freestyle
64 node: centos7-robot-2c-2g
66 # {stream} is already defined as a composite object, it cannot be overriden.
68 # This is not a template, so define branch, scope and jre for distribution to test with.
74 - opendaylight-infra-properties:
75 build-days-to-keep: '{build-days-to-keep}'
78 - opendaylight-infra-parameters:
79 os-cloud: '{os-cloud}'
81 branch: '{test-branch}'
82 refspec: 'refs/heads/{test-branch}'
83 artifacts: '{archive-artifacts}'
84 - integration-distribution-branch:
85 branch: '{verify-branch}'
86 - integration-distribution-stream:
87 stream: '{verify-stream}'
88 - integration-bundle-url:
89 bundle-url: '{bundle-url}'
90 - integration-controller-scope:
91 controller-scope: '{scope}'
92 - integration-controller-features:
93 controller-features: >
94 odl-clustering-test-app,
95 odl-openflowplugin-flow-services-ui,
96 odl-openflowplugin-app-table-miss-enforcer,
99 odl-netconf-connector-all
100 # when upgrading to carbon you should replace odl-netconf-connector-all with odl-netconf-topology
101 # and change USE_NETCONF_CONNECTOR to False in test-options
102 - integration-test-options:
103 test-options: '-v TIMEOUT_BUG_4220:10s -v USE_NETCONF_CONNECTOR:True'
104 - integration-stream-test-plan:
105 stream-test-plan: 'test-libraries-{verify-stream}.txt'
106 - integration-test-plan:
107 test-plan: 'test-libraries.txt'
108 - integration-patch-refspec:
109 branch: '$GERRIT_REFSPEC'
110 - integration-jdk-version:
112 - distribution-karaf-version:
113 karaf-version: '{verify-karaf-version}'
116 - integration-gerrit-scm:
118 refspec: '$PATCHREFSPEC'
119 branch: '{test-branch}'
122 - opendaylight-infra-wrappers:
123 build-timeout: '{build-timeout}'
126 - integration-trigger-patch-submitted:
127 server: '{server-name}'
129 branch: '{test-branch}'
130 files: 'csit/libraries/*'
133 - integration-infra-stack:
134 stack-template: '{stack-template}'
136 vm_0_flavor: '{odl_system_flavor}'
137 vm_0_image: '{odl_system_image}'
138 vm_1_count: '{tools_system_count}'
139 vm_1_flavor: '{tools_system_flavor}'
140 vm_1_image: '{tools_system_image}'
141 - integration-install-robotframework
143 properties-file: 'env.properties'
144 - integration-get-slave-addresses
146 properties-file: 'slave_addresses.txt'
147 - integration-detect-variables
148 - integration-deploy-controller-run-test
149 - integration-cleanup-tmp
155 - email-notification:
156 email-recipients: '{email-recipients}'
157 email-prefix: '[integration]'
158 - integration-csit-archive-build
161 # Template: integration-distribution-test-{stream}
162 # Goal: Verify a distribution through all system test available
163 # Operation: This template takes a distribution and passes all available system test
166 name: 'integration-distribution-test-{stream}'
168 project-type: freestyle
169 node: centos7-robot-2c-2g
172 - opendaylight-infra-properties:
173 build-days-to-keep: '{build-days-to-keep}'
176 - integration-bundle-url:
177 bundle-url: '{bundle-url}'
178 - distribution-karaf-version:
179 karaf-version: '{karaf-version}'
183 - project: '{csit-list}'
185 predefined-parameters: |
186 BUNDLE_URL=$BUNDLE_URL
187 KARAF_VERSION=$KARAF_VERSION
190 - email-notification:
191 email-recipients: '{email-recipients}'
192 email-prefix: '[integration]'
194 # Template: integration-sanity-test-{stream}
195 # Goal: Verify a distribution through sanity test
196 # Operation: This template takes a distribution and passes sanity test
199 name: 'integration-sanity-test-{stream}'
201 project-type: freestyle
202 node: centos7-robot-2c-2g
205 - opendaylight-infra-properties:
206 build-days-to-keep: '{build-days-to-keep}'
209 - integration-bundle-url:
210 bundle-url: '{bundle-url}'
211 - distribution-karaf-version:
212 karaf-version: '{karaf-version}'
216 - project: '{csit-sanity-list}'
218 predefined-parameters: |
219 BUNDLE_URL=$BUNDLE_URL
220 KARAF_VERSION=$KARAF_VERSION
223 - email-notification:
224 email-recipients: '{email-recipients}'
225 email-prefix: '[integration]'
227 # Template: integration-patch-test-{stream}
228 # Goal: Build a patch and run all available system test on a distribution containing the change
229 # Operation: This job template builds a patch, creates a distribution containing the patch, and
230 # triggers the distribution test when test-integration is used in gerrit comments
233 name: 'integration-patch-test-{stream}'
235 project-type: freestyle
236 node: centos7-java-builder-2c-8g
239 - opendaylight-infra-properties:
240 build-days-to-keep: '{build-days-to-keep}'
243 - opendaylight-infra-parameters:
244 os-cloud: '{os-cloud}'
245 project: '$GERRIT_PROJECT'
247 refspec: '$GERRIT_REFSPEC'
248 artifacts: '{archive-artifacts} **/dependency_tree.txt'
249 - integration-distribution-branch:
251 - distribution-karaf-version:
252 karaf-version: '{karaf-version}'
253 - integration-distribution-git-url:
259 - integration-gerrit-scm:
260 basedir: '$GERRIT_PROJECT'
261 refspec: '$GERRIT_REFSPEC'
263 - integration-distribution-scm:
267 - opendaylight-infra-wrappers:
272 server-name: '{server-name}'
274 - comment-added-contains-event:
275 comment-contains-value: 'test-integration'
277 - project-compare-type: 'ANT'
278 project-pattern: '**'
280 - branch-compare-type: 'ANT'
281 branch-pattern: '**/{branch}'
289 - integration-rebase-gerrit-patch
290 - wipe-org-opendaylight-repo
291 - provide-maven-settings:
292 global-settings-file: 'global-settings'
293 settings-file: 'integration-settings'
295 maven-version: 'mvn33'
296 pom: '$GERRIT_PROJECT/pom.xml'
298 clean install dependency:tree -DoutputFile=dependency_tree.txt
301 {opendaylight-infra-mvn-opts}
303 - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
304 settings: integration-settings
306 global-settings: global-settings
307 global-settings-type: cfp
310 pom: distribution/pom.xml
312 clean install dependency:tree -DoutputFile=dependency_tree.txt
313 {opendaylight-infra-mvn-opts}
315 - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
316 settings: integration-settings
318 global-settings: global-settings
319 global-settings-type: cfp
320 - integration-upload-distribution:
321 dist-pom: distribution/pom.xml
323 - project: '{csit-list}'
325 predefined-parameters: |
326 BUNDLE_URL=$BUNDLE_URL
327 KARAF_VERSION=$KARAF_VERSION
331 - email-notification:
332 email-recipients: '{email-recipients}'
333 email-prefix: '[$GERRIT_PROJECT]'
337 name: 'integration-multipatch-test-{stream}'
338 # Goal: Build one or more patches and run all available system test on a distribution containing the change.
339 # Operation: This job template checks out and builds each patch provided in job parameters, creates a distribution
340 # containing these patches, and triggers the distribution test job which includes most (if not all) available
342 # TODO: Move the following to appropriate readthedocs document.
343 # Recommended Sandbox usage:
344 # 0. Create this job and a CSIT job you want to run on the new .zip in Sandbox (disable timed triggers).
345 # 1. Copy the csit job name to clipboard.
346 # 2. Navigate to Sandbox page of this job.
347 # 3. Click "Configure".
348 # 4. Locate "Trigger/call builds on other projects" (under "Post Steps" tab).
349 # 5. Delete the long value of "Projects to build" field and paste the job name from clipboard (ctrl+a, ctrl+v).
350 # 6. Click "Save" button.
351 # 7. Click "Build with Parameters".
352 # yamllint disable-line rule:line-length
353 # 8. Start the job with your parameters, see https://wiki.opendaylight.org/view/Integration/Test/Running_System_Tests#Running_System_Tests_Using_Custom_Distribution_Built_From_Multiple_Patches
354 # 9. The multipatch job waits for the csit job to finish, so abort csit if you see something went wrong.
355 # 10. Navigate to Sandbox page of the csit job, click the run triggered from multipatch.
356 # 11. Click Parameters and copy the long value of BUNDLE_URL field to clipboard.
357 # 12. Run the same csit job woth different patchset or test options, or other csit jobs, with this BUNDLE_URL value
358 # so you do not have to wait for multipatch build. Repeat step 12.
359 # 13. Currently, the .zip lasts 24 hours (?) so you may need to jump to step 2 (or 0) after some time.
361 project-type: freestyle
362 node: centos7-java-builder-8c-8g
366 - opendaylight-infra-properties:
367 build-days-to-keep: '{build-days-to-keep}'
370 - patches-to-build-parameter:
371 patches_to_build: '$PATCHES_TO_BUILD'
372 - run-test-parameter:
374 - integration-distribution-branch:
376 - distribution-karaf-version:
377 karaf-version: '{karaf-version}'
378 - opendaylight-infra-parameters:
379 os-cloud: '{os-cloud}'
380 project: 'integration/distribution'
382 refspec: 'refs/heads/{branch}'
383 artifacts: '{archive-artifacts} **/dependency_tree.txt'
388 - opendaylight-infra-wrappers:
389 build-timeout: '1200'
392 - wipe-org-opendaylight-repo
393 - integration-multipatch-builder
394 - provide-maven-settings:
395 global-settings-file: 'global-settings'
396 settings-file: 'yangtools-settings'
399 pom: patch_tester/pom.xml
400 # TODO: Make Maven options configurable. Currently tests are not skipped, everything else is.
402 clean install dependency:tree -DoutputFile=dependency_tree.txt
405 {opendaylight-infra-mvn-opts}
407 - '-Xmx7168m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
408 settings: integration-settings
410 global-settings: global-settings
411 global-settings-type: cfp
412 - integration-upload-distribution:
413 dist-pom: patch_tester/distribution/pom.xml
415 condition-kind: boolean-expression
416 condition-expression: $RUNTEST
419 - project: '{csit-list}'
421 predefined-parameters: |
422 BUNDLE_URL=$BUNDLE_URL
423 KARAF_VERSION=$KARAF_VERSION
427 - email-notification:
428 email-recipients: '{email-recipients}'
429 email-prefix: '[int/dist]'
432 name: 'integration-distribution-weekly-test-trigger-{stream}'
434 project-type: freestyle
435 node: centos7-robot-2c-2g
438 - opendaylight-infra-properties:
439 build-days-to-keep: '{build-days-to-keep}'
442 - integration-bundle-url:
443 bundle-url: '{bundle-url}'
444 - distribution-karaf-version:
445 karaf-version: '{karaf-version}'
448 - timed: '{schedule-weekly}'
452 - project: '{csit-weekly-list}'
454 predefined-parameters: |
455 BUNDLE_URL=$BUNDLE_URL
456 KARAF_VERSION=$KARAF_VERSION
459 - email-notification:
460 email-recipients: '{email-recipients}'
461 email-prefix: '[integration]'
464 name: 'integration-distribution-high-frequency-test-trigger-{stream}'
466 project-type: freestyle
467 node: centos7-robot-2c-2g
470 - opendaylight-infra-properties:
471 build-days-to-keep: '{build-days-to-keep}'
474 - integration-bundle-url:
475 bundle-url: '{bundle-url}'
476 - distribution-karaf-version:
477 karaf-version: '{karaf-version}'
480 - timed: '{schedule-high-frequency}'
484 - project: '{csit-high-frequency-list}'
486 predefined-parameters: |
487 BUNDLE_URL=$BUNDLE_URL
488 KARAF_VERSION=$KARAF_VERSION
491 - email-notification:
492 email-recipients: '{email-recipients}'
493 email-prefix: '[integration]'