2 ###################################
3 # job configuration for cperf
4 ###################################
9 # -------------------------------
11 # -------------------------------
24 - 'cperf-{installer}-{testsuite}-{stream}'
25 - 'cperf-upload-logs-csit'
27 ################################
29 ################################
31 name: 'cperf-{installer}-{testsuite}-{stream}'
43 name: '$BUILD_NUMBER Suite: $CPERF_SUITE_NAME ODL BRANCH: $ODL_BRANCH'
50 testsuite: '{testsuite}'
51 gs-pathname: '{gs-pathname}'
52 docker-tag: '{docker-tag}'
56 - 'cperf-{testsuite}-builder'
59 name: 'cperf-upload-logs-csit'
72 gs-pathname: '{gs-pathname}'
73 docker-tag: '{docker-tag}'
76 # yamllint enable rule:line-length
85 - 'cperf-upload-logs-csit'
87 ########################
89 ########################
94 name: CPERF_SUITE_NAME
95 default: '{testsuite}'
96 description: "Suite name to run"
100 description: "Branch that OpenDaylight is running"
104 description: "OpenStack version (short name, no stable/ prefix)"
107 default: '{gs-pathname}'
108 description: "Version directory where the opnfv documents will be stored in gs repository"
112 description: "Show debug output information"
115 default: '{docker-tag}'
116 description: 'Tag to pull docker image'
120 description: "Path to the OS credentials file if given"
124 description: "Path to the private SSH key to access OPNFV nodes"
128 description: "Path to the yaml file describing overcloud nodes"
130 name: ODL_CONTAINERIZED
132 description: "boolean set true if ODL on overcloud is a container"
134 ########################
136 ########################
138 ########################
140 ########################
142 name: cperf-csit-builder
145 - 'cperf-prepare-robot'
146 - 'cperf-robot-netvirt-csit'
149 name: cperf-cbench-builder
152 - 'cperf-prepare-robot'
153 - 'cperf-robot-cbench'
156 name: cperf-prepare-robot
159 !include-raw: ./cperf-prepare-robot.sh
162 name: cperf-robot-cbench
170 # cbench requires the openflow drop test feature to be installed.
171 sshpass -p karaf ssh -o StrictHostKeyChecking=no \
172 -o UserKnownHostsFile=/dev/null \
174 -p 8101 karaf@$SDN_CONTROLLER_IP \
175 feature:install odl-openflowplugin-flow-services-ui odl-openflowplugin-drop-test
177 robot_cmd="pybot -e exclude -L TRACE -d /tmp \
178 -v ODL_SYSTEM_1_IP:${SDN_CONTROLLER_IP} \
179 -v ODL_SYSTEM_IP:${SDN_CONTROLLER_IP} \
180 -v BUNDLEFOLDER:/opt/opendaylight \
181 -v RESTCONFPORT:8081 \
184 -v ODL_SYSTEM_USER:heat-admin \
185 -v TOOLS_SYSTEM_IP:localhost \
187 robot_suite="/home/opnfv/repos/odl_test/csit/suites/openflowplugin/Performance/010_Cbench.robot"
189 docker run -i -v /tmp:/tmp opnfv/cperf:$DOCKER_TAG ${robot_cmd} ${robot_suite}
192 name: cperf-robot-netvirt-csit
195 !include-raw: ./cperf-robot-netvirt-csit.sh
202 [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
204 echo "Cleaning up docker containers/images..."
205 # Remove previous running containers if exist
206 if [[ ! -z $(docker ps -a | grep opnfv/cperf) ]]; then
207 echo "Removing existing opnfv/cperf containers..."
208 docker ps -a | grep opnfv/cperf | awk '{print $1}' | xargs docker rm -f >${redirect}
211 # Remove existing images if exist
212 if [[ ! -z $(docker images | grep opnfv/cperf) ]]; then
213 echo "Docker images to remove:"
214 docker images | head -1 && docker images | grep opnfv/cperf >${redirect}
215 image_tags=($(docker images | grep opnfv/cperf | awk '{print $2}'))
216 for tag in "${image_tags[@]}"; do
217 echo "Removing docker image opnfv/cperf:$tag..."
218 docker rmi opnfv/cperf:$tag >/dev/null
223 name: cperf-upload-logs-csit
225 - shell: !include-raw: ./cperf-upload-logs-csit.sh