From 999eea7487d1d17d83115fcfae44bb835b9f6360 Mon Sep 17 00:00:00 2001 From: Jamo Luhrsen Date: Wed, 1 Mar 2017 22:49:45 -0800 Subject: [PATCH] Add logic to allow ODL Cbench suite to run from docker container - also changing deploy scenario to only use a single controller Change-Id: Ic1aa9489b17478865db7f9509091e165fbe4a6b3 Signed-off-by: Jamo Luhrsen --- jjb/apex/apex.yml | 4 ++-- jjb/cperf/cperf-ci-jobs.yml | 40 +++++++++++++++++++++++++++++++++++----- 2 files changed, 37 insertions(+), 7 deletions(-) diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml index ac1ef499b..5578d2beb 100644 --- a/jjb/apex/apex.yml +++ b/jjb/apex/apex.yml @@ -370,7 +370,7 @@ builders: - trigger-builds: - - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-ha-{stream}' + - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-noha-{stream}' predefined-parameters: OPNFV_CLEAN=yes git-revision: false @@ -379,7 +379,7 @@ - trigger-builds: - project: 'cperf-apex-intel-pod2-daily-{stream}' predefined-parameters: - DEPLOY_SCENARIO=os-odl_l3-nofeature-ha + DEPLOY_SCENARIO=os-odl_l3-nofeature-noha block: true same-node: true diff --git a/jjb/cperf/cperf-ci-jobs.yml b/jjb/cperf/cperf-ci-jobs.yml index 125937e80..d1914f6f1 100644 --- a/jjb/cperf/cperf-ci-jobs.yml +++ b/jjb/cperf/cperf-ci-jobs.yml @@ -113,13 +113,43 @@ builders: - shell: | #!/bin/bash - set +e - # TODO: need to figure out the logic to get ${CONTROLLER_IP} used below + set -o errexit + set -o nounset + set -o pipefail + undercloud_mac=$(sudo virsh domiflist undercloud | grep default | \ + grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+") + INSTALLER_IP=$(/usr/sbin/arp -e | grep ${undercloud_mac} | awk {'print $1'}) + sudo scp $INSTALLER_IP:/home/stack/stackrc /tmp/stackrc + source /tmp/stackrc + + # robot suites need the ssh key to log in to controller nodes, so throwing it + # in tmp, and mounting /tmp as $HOME as far as robot is concerned + sudo mkdir -p /tmp/.ssh + sudo scp $INSTALLER_IP:/home/stack/.ssh/id_rsa /tmp/.ssh/ + sudo chmod -R 0600 /tmp/.ssh + + # cbench requires the openflow drop test feature to be installed. + sshpass -p karaf ssh -o StrictHostKeyChecking=no \ + -o UserKnownHostsFile=/dev/null \ + -o LogLevel=error \ + -p 8101 karaf@$SDN_CONTROLLER_IP \ + feature:install odl-openflowplugin-flow-services-ui odl-openflowplugin-drop-test + docker pull opnfv/cperf:$DOCKER_TAG - robot_cmd="pybot -e exclude -v ODL_SYSTEM_IP:${CONTROLLER_IP} -v switch_count:100 -v loops:10 \ - -v TOOLS_SYSTEM_IP:localhost -v duration_in_seconds:60" + + robot_cmd="pybot -e exclude -L TRACE \ + -v ODL_SYSTEM_1_IP:${SDN_CONTROLLER_IP} \ + -v ODL_SYSTEM_IP:${SDN_CONTROLLER_IP} \ + -v BUNDLEFOLDER:/opt/opendaylight \ + -v RESTCONFPORT:8081 \ + -v USER_HOME:/tmp \ + -v USER:heat-admin \ + -v ODL_SYSTEM_USER:heat-admin \ + -v TOOLS_SYSTEM_IP:localhost \ + -v of_port:6653" robot_suite="/home/opnfv/repos/odl_test/csit/suites/openflowplugin/Performance/010_Cbench.robot" - docker run opnfv/cperf:$DOCKER_TAG ${robot_cmd} ${robot_suite} + + docker run -v /tmp:/tmp opnfv/cperf:$DOCKER_TAG ${robot_cmd} ${robot_suite} - builder: name: cperf-cleanup -- 2.16.6