14 branch: 'stable/{stream}'
15 gs-pathname: '/{stream}'
21 slave-label: 'doctor-apex-verify'
23 slave-label: 'doctor-fuel-verify'
25 # slave-label: 'ool-virtual3'
30 slave-label: 'opnfv-build-ubuntu'
32 slave-label: 'opnfv-build-ubuntu-arm'
40 auto-trigger-name: 'doctor-verify'
43 auto-trigger-name: 'doctor-verify'
48 phase: 'build-aarch64'
51 - 'doctor-verify-{stream}'
52 - 'doctor-verify-unit-test-{stream}'
53 - 'doctor-{task}-{installer}-{inspector}-{stream}'
54 - 'doctor-{task}-{installer}-{inspector}-{phase}-{stream}'
57 name: 'doctor-verify-{stream}'
59 disabled: '{obj:disabled}'
61 project-type: 'multijob'
67 - 'opnfv-build-ubuntu-defaults'
74 server-name: 'gerrit.opnfv.org'
76 - patchset-created-event:
77 exclude-drafts: 'false'
78 exclude-trivial-rebase: 'false'
79 exclude-no-code-change: 'false'
80 - draft-published-event
81 - comment-added-contains-event:
82 comment-contains-value: 'recheck'
83 - comment-added-contains-event:
84 comment-contains-value: 'reverify'
86 - project-compare-type: 'ANT'
87 project-pattern: '{project}'
89 - branch-compare-type: 'ANT'
90 branch-pattern: '**/{branch}'
93 pattern: 'doctor_tests/**'
98 # we do nothing here as the main stuff will be done
100 echo "Triggering phase jobs!"
102 name: 'doctor-build-and-unittest'
103 execution-type: PARALLEL
105 - name: 'doctor-verify-unit-test-{stream}'
106 current-parameters: false
107 predefined-parameters: |
108 GERRIT_BRANCH=$GERRIT_BRANCH
109 GERRIT_REFSPEC=$GERRIT_REFSPEC
110 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
111 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
113 node-parameters: false
114 kill-phase-on: FAILURE
118 name: 'doctor-verify-unit-test-{stream}'
119 disabled: '{obj:disabled}'
128 - 'opnfv-build-ubuntu-defaults'
132 - 'doctor-verify-unit-test-builders-macro'
134 - 'doctor-verify-unit-test-publishers-macro'
138 name: 'doctor-{task}-{installer}-{inspector}-{stream}'
140 disabled: '{obj:disabled}'
142 project-type: 'multijob'
144 node: '{slave-label}'
152 default: /home/jenkins/openstack.creds
153 description: 'OpenStack credentials'
154 - '{slave-label}-defaults'
155 - '{installer}-defaults'
158 default: '{docker-tag}'
159 description: 'Tag to pull docker image'
161 name: CLEAN_DOCKER_IMAGES
163 description: 'Remove downloaded docker images (opnfv/functest:*)'
165 name: DEPLOY_SCENARIO
166 default: 'os-nosdn-nofeature-ha'
167 description: 'Scenario to deploy and test'
168 # functest-suite-parameter
173 name: FUNCTEST_SUITE_NAME
174 default: 'doctor-notification'
176 name: TESTCASE_OPTIONS
177 # yamllint disable rule:line-length
178 default: '-e INSPECTOR_TYPE={inspector} -e PYTHON_ENABLE={is-python} -v $WORKSPACE:/home/opnfv/repos/doctor'
179 # yamllint enable rule:line-length
180 description: 'Addtional parameters specific to test case(s)'
184 default: '{gs-pathname}'
185 # yamllint disable rule:line-length
186 description: "Version directory where the opnfv documents will be stored in gs repository"
187 # yamllint enable rule:line-length
189 name: FUNCTEST_REPO_DIR
190 default: "/home/opnfv/repos/functest"
191 description: "Directory where the Functest repository is cloned"
193 name: PUSH_RESULTS_TO_DB
195 description: "Push the results of all the tests to the resultDB"
199 description: "Show debug output information"
205 - '{auto-trigger-name}':
208 files: 'doctor_tests/**'
213 # we do nothing here as the main stuff will be done
215 echo "Triggering phase jobs!"
217 name: 'doctor-verify-installer-inspector'
218 execution-type: PARALLEL
220 - name: 'doctor-{task}-{installer}-{inspector}-build-x86_64-{stream}'
221 current-parameters: false
223 node-parameters: false
224 kill-phase-on: FAILURE
226 - name: 'doctor-{task}-{installer}-{inspector}-build-aarch64-{stream}'
227 current-parameters: false
229 node-parameters: false
230 kill-phase-on: FAILURE
234 name: 'doctor-{task}-{installer}-{inspector}-{phase}-{stream}'
235 disabled: '{obj:disabled}'
244 - '{slave-label}-defaults'
248 - 'doctor-verify-installer-inspector-builders-macro'
250 - 'doctor-verify-publishers-macro'
251 # -------------------------------
253 # -------------------------------
256 name: 'doctor-verify-unit-test-builders-macro'
258 - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
260 name: 'doctor-verify-installer-inspector-builders-macro'
262 - 'clean-workspace-log'
263 # yamllint disable rule:line-length
265 # NOTE: Create symbolic link, so that we can archive file outside
267 # NOTE: We are printing all logs under 'tests/' during test run,
268 # so this symbolic link should not be in 'tests/'. Otherwise,
269 # we'll have the same log twice in jenkins console log.
270 ln -sfn $HOME/opnfv/functest/results/{stream} functest_results
271 # NOTE: Get functest script in $WORKSPACE. This functest script is
272 # needed to perform VM image download in set-functest-env.sh
273 # from E release cycle.
275 wget https://git.opnfv.org/functest/plain/functest/ci/download_images.sh -O functest/ci/download_images.sh
276 - 'functest-suite-builder'
278 functest_log="$HOME/opnfv/functest/results/{stream}/$FUNCTEST_SUITE_NAME.log"
279 # NOTE: checking the test result, as the previous job could return
280 # 0 regardless the result of doctor test scenario.
281 grep -e 'doctor test successfully' $functest_log || exit 1
282 # yamllint enable rule:line-length
284 # -------------------------------
286 # -------------------------------
288 name: 'doctor-verify-publishers-macro'
291 artifacts: 'doctor_tests/*.log'
293 artifacts: 'functest_results/$FUNCTEST_SUITE_NAME.log'
294 - email-jenkins-admins-on-failure
296 name: 'doctor-verify-unit-test-publishers-macro'
298 - email-jenkins-admins-on-failure
300 #####################################
302 #####################################
304 name: 'doctor-verify'
307 server-name: 'gerrit.opnfv.org'
309 - patchset-created-event:
310 exclude-drafts: 'false'
311 exclude-trivial-rebase: 'false'
312 exclude-no-code-change: 'false'
313 - draft-published-event
314 - comment-added-contains-event:
315 comment-contains-value: 'recheck'
316 - comment-added-contains-event:
317 comment-contains-value: 'reverify'
319 - project-compare-type: 'ANT'
320 project-pattern: '{project}'
322 - branch-compare-type: 'ANT'
323 branch-pattern: '**/{branch}'