1 ###################################
2 # job configuration for functest
3 ###################################
9 #--------------------------------
11 #--------------------------------
17 brahmaputra: &brahmaputra
19 branch: 'stable/{stream}'
20 gs-pathname: '{stream}'
21 docker-tag: 'brahmaputra.1.0'
22 #--------------------------------
23 # POD, INSTALLER, AND BRANCH MAPPING
24 #--------------------------------
26 #--------------------------------
31 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
36 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
41 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
46 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
51 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
56 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
61 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
66 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
71 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
76 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
78 #--------------------------------
80 #--------------------------------
84 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
89 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
94 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
99 auto-trigger-name: 'yardstick-vtcdaily-ericsson-pod1-trigger'
104 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
109 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
114 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
119 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
124 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
129 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
134 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
139 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
144 auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
149 auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
154 auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
156 #--------------------------------
159 - 'yardstick-{installer}-{pod}-{suite}-{stream}'
161 ################################
163 ################################
165 name: 'yardstick-{installer}-{pod}-{suite}-{stream}'
178 name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
184 - '{auto-trigger-name}'
190 - '{installer}-defaults'
191 - 'yardstick-params-{pod}'
193 name: DEPLOY_SCENARIO
194 default: 'os-odl_l2-nofeature-ha'
197 default: '{docker-tag}'
198 description: 'Tag to pull docker image'
200 name: YARDSTICK_SUITE_NAME
201 default: opnfv_${{NODE_NAME}}_{suite}.yaml
202 description: 'Path to test suite'
206 description: "Show debut output information"
210 credentials-id: '{ssh-credentials}'
215 - 'yardstick-cleanup'
216 #- 'yardstick-fetch-os-creds'
217 - 'yardstick-{suite}'
221 recipients: ana.cunha@ericsson.com
223 ########################
225 ########################
227 name: yardstick-daily
232 [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
234 # labconfig is used only for joid
237 if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
238 instack_mac=$(sudo virsh domiflist instack | grep default | \
239 grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
240 INSTALLER_IP=$(/usr/sbin/arp -e | grep ${instack_mac} | awk {'print $1'})
241 sshkey="-v /root/.ssh/id_rsa:/root/.ssh/id_rsa"
242 if [[ -n $(sudo iptables -L FORWARD |grep "REJECT"|grep "reject-with icmp-port-unreachable") ]]; then
243 #note: this happens only in opnfv-lf-pod1
244 sudo iptables -D FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
245 sudo iptables -D FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
247 elif [[ ${INSTALLER_TYPE} == 'joid' ]]; then
248 # If production lab then creds may be retrieved dynamically
249 # creds are on the jumphost, always in the same folder
250 labconfig="-v $LAB_CONFIG/admin-openrc:/home/opnfv/openrc"
251 # If dev lab, credentials may not be the default ones, just provide a path to put them into docker
252 # replace the default one by the customized one provided by jenkins config
255 opts="--privileged=true --rm"
256 envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \
257 -e NODE_NAME=${NODE_NAME} -e EXTERNAL_NETWORK=${EXTERNAL_NETWORK} \
258 -e YARDSTICK_BRANCH=${GIT_BRANCH##origin/} -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO}"
260 # Pull the latest image
261 docker pull opnfv/yardstick:$DOCKER_TAG >$redirect
264 cmd="sudo docker run ${opts} ${envs} ${labconfig} ${sshkey} opnfv/yardstick \
265 run_tests.sh ${YARDSTICK_DB_BACKEND} ${YARDSTICK_SUITE_NAME}"
266 echo "Yardstick: Running docker cmd: ${cmd}"
269 echo "Yardstick: done!"
272 name: yardstick-vtcdaily
277 [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
283 name: yardstick-fetch-os-creds
286 !include-raw: ../../utils/fetch_os_creds.sh
289 name: yardstick-cleanup
293 [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
295 echo "Cleaning up docker containers/images..."
296 # Remove previous running containers if exist
297 if [[ ! -z $(docker ps -a | grep opnfv/yardstick) ]]; then
298 echo "Removing existing opnfv/yardstick containers..."
299 docker ps -a | grep opnfv/yardstick | awk '{print $1}' | xargs docker rm -f >$redirect
303 # Remove existing images if exist
304 if [[ ! -z $(docker images | grep opnfv/yardstick) ]]; then
305 echo "Docker images to remove:"
306 docker images | head -1 && docker images | grep opnfv/yardstick
307 image_tags=($(docker images | grep opnfv/yardstick | awk '{print $2}'))
308 for tag in "${image_tags[@]}"; do
309 echo "Removing docker image opnfv/yardstick:$tag..."
310 docker rmi opnfv/yardstick:$tag >$redirect
314 ########################
316 ########################
318 name: 'yardstick-params-intel-pod5'
321 name: YARDSTICK_DB_BACKEND
322 default: '-i 104.197.68.199:8086'
323 description: 'Arguments to use in order to choose the backend DB'
326 name: 'yardstick-params-intel-pod6'
329 name: YARDSTICK_DB_BACKEND
330 default: '-i 104.197.68.199:8086'
331 description: 'Arguments to use in order to choose the backend DB'
334 name: 'yardstick-params-intel-pod8'
337 name: YARDSTICK_DB_BACKEND
339 description: 'Arguments to use in order to choose the backend DB'
342 name: 'yardstick-params-ericsson-pod1'
345 name: YARDSTICK_DB_BACKEND
346 default: '-i 104.197.68.199:8086'
347 description: 'Arguments to use in order to choose the backend DB'
350 name: 'yardstick-params-ericsson-pod2'
353 name: YARDSTICK_DB_BACKEND
354 default: '-i 104.197.68.199:8086'
355 description: 'Arguments to use in order to choose the backend DB'
358 name: 'yardstick-params-lf-pod1'
361 name: YARDSTICK_DB_BACKEND
362 default: '-i 104.197.68.199:8086'
363 description: 'Arguments to use in order to choose the backend DB'
366 name: 'yardstick-params-lf-pod2'
369 name: YARDSTICK_DB_BACKEND
370 default: '-i 104.197.68.199:8086'
371 description: 'Arguments to use in order to choose the backend DB'
374 name: 'yardstick-params-huawei-pod1'
377 name: YARDSTICK_DB_BACKEND
378 default: '-i 104.197.68.199:8086'
379 description: 'Arguments to use in order to choose the backend DB'
382 name: 'yardstick-params-huawei-pod2'
385 name: YARDSTICK_DB_BACKEND
386 default: '-i 104.197.68.199:8086'
387 description: 'Arguments to use in order to choose the backend DB'
390 name: 'yardstick-params-zte-pod1'
393 name: YARDSTICK_DB_BACKEND
394 default: '-i 104.197.68.199:8086'
395 description: 'Arguments to use in order to choose the backend DB'
398 name: 'yardstick-params-orange-pod2'
401 name: YARDSTICK_DB_BACKEND
402 default: '-i 104.197.68.199:8086'
403 description: 'Arguments to use in order to choose the backend DB'
406 name: 'yardstick-params-virtual'
409 name: YARDSTICK_DB_BACKEND
411 description: 'Arguments to use in order to choose the backend DB'
414 name: 'yardstick-params-huawei-virtual'
417 name: YARDSTICK_DB_BACKEND
419 description: 'Arguments to use in order to choose the backend DB'
422 name: 'yardstick-params-huawei-pod3'
425 name: YARDSTICK_DB_BACKEND
427 description: 'Arguments to use in order to choose the backend DB'
430 name: 'yardstick-params-huawei-pod4'
433 name: YARDSTICK_DB_BACKEND
435 description: 'Arguments to use in order to choose the backend DB'
437 #######################
439 #######################
440 # trigger for PODs to only run yardstick test suites
442 name: 'yardstick-vtcdaily-ericsson-pod1-trigger'
447 name: 'yardstick-daily-huawei-pod3-trigger'
452 name: 'yardstick-daily-huawei-pod4-trigger'