7 # -------------------------------
9 # -------------------------------
12 opnfv-releng-version: master
15 # -------------------------------
17 # -------------------------------
19 - 'os-nosdn-nofeature-noha':
20 deploy-scenario: 'os-nosdn-nofeature'
23 - 'os-nosdn-osm-noha':
24 deploy-scenario: 'os-nosdn-osm'
27 - 'os-odl-nofeature-noha':
28 deploy-scenario: 'os-odl-nofeature'
31 - 'os-odl-bgpvpn-noha':
32 deploy-scenario: 'os-odl-bgpvpn'
36 deploy-scenario: 'os-odl-sfc'
39 - 'k8-nosdn-nofeature-noha':
40 deploy-scenario: 'k8-nosdn-nofeature'
41 installer-type: 'kubespray'
43 - 'k8-canal-nofeature-noha':
44 deploy-scenario: 'k8-canal-nofeature'
45 installer-type: 'kubespray'
47 - 'k8-calico-nofeature-noha':
48 deploy-scenario: 'k8-calico-nofeature'
49 installer-type: 'kubespray'
51 - 'k8-contiv-nofeature-noha':
52 deploy-scenario: 'k8-contiv-nofeature'
53 installer-type: 'kubespray'
55 - 'k8-flannel-nofeature-noha':
56 deploy-scenario: 'k8-flannel-nofeature'
57 installer-type: 'kubespray'
59 - 'k8-nosdn-istio-noha':
60 deploy-scenario: 'k8-nosdn-istio'
61 installer-type: 'kubespray'
64 # -------------------------------
66 # -------------------------------
71 # -------------------------------
73 # -------------------------------
77 slave-label: xci-virtual
80 slave-label: xci-virtual
83 slave-label: xci-virtual
85 # -------------------------------
87 # -------------------------------
93 # -------------------------------
95 # -------------------------------
97 - 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
98 - 'xci-{phase}-{pod}-{distro}-daily-{stream}'
100 # -------------------------------
102 # -------------------------------
104 name: 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
106 disabled: '{obj:disabled}'
112 use-build-blocker: true
120 - '^bifrost-.*periodic.*'
121 - '^osa-.*periodic.*'
130 name: DEPLOY_SCENARIO
131 default: '{deploy-scenario}'
134 default: '{installer-type}'
137 default: '{xci-flavor}'
140 default: '{slave-label}'
148 name: FUNCTEST_SUITE_NAME
155 default: https://gerrit.opnfv.org/gerrit/$PROJECT
156 description: 'Git URL to use on this Jenkins Slave'
162 - fix-workspace-permissions
165 - description-setter:
166 description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME"
168 - project: 'xci-deploy-{pod}-{distro}-daily-{stream}'
169 current-parameters: false
170 predefined-parameters: |
171 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
172 INSTALLER_TYPE=$INSTALLER_TYPE
173 XCI_FLAVOR=$XCI_FLAVOR
175 XCI_DISTRO=$XCI_DISTRO
176 FUNCTEST_MODE=$FUNCTEST_MODE
177 FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
181 - project: 'xci-functest-{pod}-{distro}-daily-{stream}'
182 current-parameters: false
183 predefined-parameters: |
184 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
185 INSTALLER_TYPE=$INSTALLER_TYPE
186 XCI_FLAVOR=$XCI_FLAVOR
188 XCI_DISTRO=$XCI_DISTRO
189 FUNCTEST_MODE=$FUNCTEST_MODE
190 FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
194 build-step-failure-threshold: 'never'
195 failure-threshold: 'never'
196 unstable-threshold: 'FAILURE'
198 - project: 'xci-yardstick-{pod}-{distro}-daily-{stream}'
199 current-parameters: false
200 predefined-parameters: |
201 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
202 INSTALLER_TYPE=$INSTALLER_TYPE
203 XCI_FLAVOR=$XCI_FLAVOR
205 XCI_DISTRO=$XCI_DISTRO
209 build-step-failure-threshold: 'never'
210 failure-threshold: 'never'
211 unstable-threshold: 'FAILURE'
214 # yamllint disable rule:line-length
215 # yamllint enable rule:line-length
216 - email-jenkins-admins-on-failure
219 name: 'xci-{phase}-{pod}-{distro}-daily-{stream}'
227 use-build-blocker: true
233 - '^bifrost-.*periodic.*'
234 - '^osa-.*periodic.*'
246 - fix-workspace-permissions
254 branch: '{opnfv-releng-version}'
256 name: DEPLOY_SCENARIO
257 default: 'os-nosdn-nofeature-noha'
269 default: '{slave-label}'
274 name: FUNCTEST_SUITE_NAME
281 default: https://gerrit.opnfv.org/gerrit/$PROJECT
284 - description-setter:
285 description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME"
286 - 'xci-daily-{phase}-macro'
288 # --------------------------
290 # --------------------------
291 # These need to be properly fixed once the basic deployment, functest, and
292 # yardstick jobs are working outside of clean vm.
293 # One of the ugly fixes is moving test preparation step into the
294 # deployment job itself since test preparation requires some of the
295 # things from deployment job. With clean VM, this wasn't an issue
296 # since everything was on clean VM. When we move things out of clean
297 # VM, things are done in workspaces of the jobs that are different.
299 # Apart from these things, we will need to go through the scripts
300 # used for verify jobs and make them updated in order to be able to
301 # use them for jobs that don't use clean VM.
303 name: 'xci-daily-deploy-macro'
310 echo "Cleaning the leftovers from the earlier run"
311 echo "---------------------------------------------------------------------------------"
312 for vm in $(sudo virsh list --all --name | grep -v xci_vm); do
314 sudo virsh destroy $vm > /dev/null 2>&1 || true
315 sudo virsh undefine $vm > /dev/null 2>&1 || true
316 sudo killall -r vbmc > /dev/null 2>&1 || true
317 sudo rm -rf /root/.vbmc > /dev/null 2>&1 || true
319 echo "---------------------------------------------------------------------------------"
321 cd $WORKSPACE/xci && ./xci-deploy.sh
323 echo "Prepare OPNFV VM for Tests"
324 echo "---------------------------------------------------------------------------------"
325 export XCI_PATH=$WORKSPACE
326 export XCI_VENV=${XCI_PATH}/venv
327 source $XCI_VENV/bin/activate
329 declare -x "\${var}" 2>/dev/null
331 done < ${XCI_PATH}/.cache/xci.env && cd ${XCI_PATH}/xci && \
332 ansible-playbook -i playbooks/dynamic_inventory.py playbooks/prepare-tests.yml
333 ssh root@192.168.122.2 "/root/prepare-tests.sh"
334 echo "---------------------------------------------------------------------------------"
337 name: 'xci-daily-functest-macro'
343 ssh root@192.168.122.2 "/root/run-functest.sh"
346 case ${DEPLOY_SCENARIO[0]} in
348 FUNCTEST_LOG=/root/functest-results/functest.log
351 FUNCTEST_LOG=/root/functest-results/functest-kubernetes.log
354 echo "Unable to determine the installer. Exiting!"
360 echo "---------------------------------------------------------------------------------"
361 ssh root@192.168.122.2 "cat $FUNCTEST_LOG"
362 echo "---------------------------------------------------------------------------------"
363 exit ${functest_exit}
365 name: 'xci-daily-yardstick-macro'
372 ssh root@192.168.122.2 "/root/run-yardstick.sh"