1 ###################################
2 # job configuration for functest
3 ###################################
10 installer_ip: '10.20.0.2'
13 installer_type: 'foreman'
14 installer_ip: '172.30.10.73'
17 installer_type: 'foreman'
18 installer_ip: '172.30.10.73'
21 - 'set-functest-env-{pod}'
22 - 'clean-functest-env-{pod}'
23 - 'functest-openstack-bench-test-{pod}'
24 - 'functest-openstack-tempest-smoke-test-{pod}'
25 - 'functest-odl-test-{pod}'
26 - 'functest-vims-test-{pod}'
27 - 'functest-vping-test-{pod}'
28 - 'functest-daily-{stream}'
29 - 'functest-merge-{stream}'
30 - 'functest-verify-{stream}'
32 # stream: branch with - in place of / (eg. stable-arno)
33 # branch: branch (eg. stable/arno)
44 ################################
46 ################################
48 name: set-functest-env-{pod}
50 project-type: freestyle
57 artifactDaysToKeep: -1
65 echo "Functest: prepare Functest environment"
66 mkdir -p $HOME/functest/
67 # source openstack vars
68 if [[ ! -f $HOME/opnfv-openrc.sh ]]; then
69 echo "Unable to access file $HOME/opnfv-openrc.sh"
72 source $HOME/opnfv-openrc.sh
74 # WORKSPACE is the root of the functest repo
75 # go into WORKSPACE where the functest repo is cloned
79 echo "Functest: prepare Functest environment"
80 python $WORKSPACE/testcases/config_functest.py --debug $WORKSPACE/ start
83 name: clean-functest-env-{pod}
85 project-type: freestyle
92 artifactDaysToKeep: -1
101 echo "Functest: copy results and clean Functest environment"
102 mkdir -p $HOME/functest/results
105 cp -Rf $WORSPACE/testcases/Controllers/ODL/CI/logs $HOME/functest/results/ODL
107 # save tempest.conf for further troubleshooting
108 cp $HOME/.rally/tempest/for-deployment-*/tempest.conf $HOME/functest/results
111 python $WORKSPACE/testcases/config_functest.py --debug --force $WORKSPACE/ clean
114 name: functest-openstack-bench-test-{pod}
116 project-type: freestyle
123 artifactDaysToKeep: -1
124 artifactNumToKeep: -1
131 echo "Functest: run Functest Rally Bench suites"
132 python $WORKSPACE/testcases/VIM/OpenStack/CI/libraries/run_rally.py --debug $WORKSPACE/ all
135 name: functest-openstack-tempest-smoke-test-{pod}
137 project-type: freestyle
144 artifactDaysToKeep: -1
145 artifactNumToKeep: -1
153 echo "Functest: run Tempest suite"
154 rally verify start smoke
158 name: functest-odl-test-{pod}
160 project-type: freestyle
167 artifactDaysToKeep: -1
168 artifactNumToKeep: -1
175 echo "Functest: run ODL suite"
176 $WORKSPACE/testcases/Controllers/ODL/CI/start_tests.sh
179 name: functest-vims-test-{pod}
181 project-type: freestyle
188 artifactDaysToKeep: -1
189 artifactNumToKeep: -1
193 echo "put your CI scenario here"
197 name: functest-vping-test-{pod}
199 project-type: freestyle
206 artifactDaysToKeep: -1
207 artifactNumToKeep: -1
215 echo "Functest: run vPing"
216 python $WORKSPACE/testcases/vPing/CI/libraries/vPing.py --debug $WORKSPACE/
221 project-type: freestyle
230 default: '{installer_type}'
231 description: "Installer name that is used for deployment."
234 default: '{installer_ip}'
235 description: "Installer IP."
240 credentials-id: '{ssh-credentials}'
247 artifactDaysToKeep: -1
248 artifactNumToKeep: -1
251 - 'functest-fetch-os-creds'
253 - 'functest-store-results'
257 name: 'functest-daily-{stream}'
261 # Job template for daily builders
263 # Required Variables:
264 # stream: branch with - in place of / (eg. stable)
265 # branch: branch (eg. stable)
267 project-type: freestyle
268 varsetabove: '{somevar}'
271 daysToKeep: '{build-days-to-keep}'
272 numToKeep: '{build-num-to-keep}'
273 artifactDaysToKeep: '{build-artifact-days-to-keep}'
274 artifactNumToKeep: '{build-artifact-num-to-keep}'
279 - functest-parameter:
280 gs-pathname: '{gs-pathname}'
284 credentials-id: '{ssh-credentials}'
289 - ssh-agent-credentials:
290 user: '{ssh-credentials}'
293 - 'functest-{stream}'
300 !include-raw ../opnfvdocs/docu-build.sh
306 name: 'functest-verify-{stream}'
310 project-type: freestyle
315 artifactDaysToKeep: -1
316 artifactNumToKeep: -1
324 - gerrit-trigger-scm:
325 credentials-id: '{ssh-credentials}'
326 refspec: '$GERRIT_REFSPEC'
327 choosing-strategy: 'gerrit'
330 - ssh-agent-credentials:
331 user: '{ssh-credentials}'
336 - patchset-created-event:
337 exclude-drafts: 'false'
338 exclude-trivial-rebase: 'false'
339 exclude-no-code-change: 'false'
340 - draft-published-event
341 - comment-added-contains-event:
342 comment-contains-value: 'recheck'
343 - comment-added-contains-event:
344 comment-contains-value: 'reverify'
346 - project-compare-type: 'ANT'
347 project-pattern: 'functest'
349 - branch-compare-type: 'ANT'
350 branch-pattern: '**/{branch}'
354 !include-raw ../opnfvdocs/docu-build.sh
357 name: 'functest-merge-{stream}'
361 # builder-merge job to run JJB update
363 # This job's purpose is to update all the JJB
365 project-type: freestyle
370 artifactDaysToKeep: -1
380 - gerrit-trigger-scm:
381 credentials-id: '{ssh-credentials}'
383 choosing-strategy: 'default'
386 - ssh-agent-credentials:
387 user: '{ssh-credentials}'
392 - change-merged-event
393 - comment-added-contains-event:
394 comment-contains-value: 'remerge'
396 - project-compare-type: 'ANT'
397 project-pattern: 'functest'
399 - branch-compare-type: 'ANT'
400 branch-pattern: '**/{branch}'
404 !include-raw ../opnfvdocs/docu-build.sh
406 ########################
408 ########################
410 name: functest-parameter
414 default: '{gs-pathname}'
415 description: "Version directory where the opnfv documents will be stored in gs repository"
422 default: https://gerrit.opnfv.org/gerrit/$PROJECT
423 description: "Override GIT_BASE"
430 default: ssh://gerrit.opnfv.org:29418/$PROJECT
431 description: "Override GIT_BASE"
438 default: ssh://gerrit.opnfv.org:29418/$PROJECT
439 description: "Override GIT_BASE"
440 ########################
442 ########################
444 name: 'functest-master'
446 - pollscm: "H 9 * * *"
449 name: 'functest-stable-arno'
451 - pollscm: "H 21 * * *"
453 ########################
455 ########################
464 echo "Functest: prepare Functest environment"
465 mkdir -p $HOME/functest/
466 source $HOME/functest/opnfv-openrc.sh
468 # WORKSPACE is the root of the functest repo
469 # go into WORKSPACE where the functest repo is cloned
473 echo "Functest: prepare Functest environment"
474 python $WORKSPACE/testcases/config_functest.py --debug $WORKSPACE/ start
477 echo "Functest: run vPing"
478 python $WORKSPACE/testcases/vPing/CI/libraries/vPing.py --debug $WORKSPACE/
481 echo "Functest: run ODL suite"
482 $WORKSPACE/testcases/Controllers/ODL/CI/start_tests.sh
485 echo "Functest: run Functest Rally Bench suites"
486 python $WORKSPACE/testcases/VIM/OpenStack/CI/libraries/run_rally.py --debug $WORKSPACE/ all
489 echo "Functest: run Tempest suite"
490 rally verify start smoke
494 echo "Functest: copy results and clean Functest environment"
495 mkdir -p $HOME/functest/results
498 cp -Rf $WORKSPACE/testcases/Controllers/ODL/CI/logs $HOME/functest/results/ODL
500 # save tempest.conf for further troubleshooting
501 cp $HOME/.rally/tempest/for-deployment-*/tempest.conf $HOME/functest/results
504 name: functest-store-results
507 !include-raw res-build.sh
510 name: functest-cleanup
517 python $WORKSPACE/testcases/config_functest.py --debug --force $WORKSPACE/ clean
520 name: functest-fetch-os-creds
523 !include-raw ../../utils/fetch_os_creds.sh