SCREEN_LOGDIR=/opt/stack/data/log
LOG_COLOR=False
RECLONE=yes
+EOF
-disable_service swift
-disable_service cinder
-disable_service n-net
-disable_service q-vpn
-enable_service q-svc
-enable_service q-dhcp
-enable_service q-meta
-enable_service tempest
-enable_service n-novnc
-enable_service n-cauth
+IFS=,
+for service_name in ${DISABLE_OS_SERVICES}
+do
+cat >> ${local_conf_file_name} << EOF
+disable_service ${service_name}
+EOF
+done
+for service_name in ${ENABLE_OS_SERVICES}
+do
+cat >> ${local_conf_file_name} << EOF
+enable_service ${service_name}
+EOF
+done
+unset IFS
+cat >> ${local_conf_file_name} << EOF
HOST_IP=$OPENSTACK_CONTROL_NODE_IP
SERVICE_HOST=\$HOST_IP
NEUTRON_CREATE_INITIAL_NETWORKS=False
Q_PLUGIN=ml2
-Q_ML2_TENANT_NETWORK_TYPE=vxlan
+Q_ML2_TENANT_NETWORK_TYPE=${TENANT_NETWORK_TYPE}
+Q_OVS_USE_VETH=True
ENABLE_TENANT_TUNNELS=True
-
MYSQL_HOST=\$SERVICE_HOST
RABBIT_HOST=\$SERVICE_HOST
GLANCE_HOSTPORT=\$SERVICE_HOST:9292
SERVICE_PASSWORD=admin
ADMIN_PASSWORD=admin
-enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}
+enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_VERSION}
ODL_PORT=8080
ODL_MODE=externalodl
+LIBVIRT_TYPE=qemu
EOF
[[post-config|/etc/neutron/plugins/ml2/ml2_conf.ini]]
[agent]
minimize_polling=True
+
+[[post-config|/etc/neutron/dhcp_agent.ini]]
+[DEFAULT]
+force_metadata = True
+enable_isolated_metadata = True
+
+[[post-config|/etc/nova/nova.conf]]
+[DEFAULT]
+force_config_drive = False
+
EOF
echo "local.conf Created...."
SERVICE_PASSWORD=admin
ADMIN_PASSWORD=admin
-enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}
+enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_VERSION}
ODL_MODE=compute
+LIBVIRT_TYPE=qemu
EOF
for i in `seq 1 ${NUM_ODL_SYSTEM}`
do
CONTROLLERIP=ODL_SYSTEM_${i}_IP
- echo "dumping first 500K bytes of karaf log..." > "odl${i}_karaf.log"
- ssh "${!CONTROLLERIP}" head --bytes=500K "/tmp/${BUNDLEFOLDER}/data/log/karaf.log" >> "odl${i}_karaf.log"
- echo "dumping last 500K bytes of karaf log..." >> "odl${i}_karaf.log"
- ssh "${!CONTROLLERIP}" tail --bytes=500K "/tmp/${BUNDLEFOLDER}/data/log/karaf.log" >> "odl${i}_karaf.log"
echo "killing karaf process..."
ssh "${!CONTROLLERIP}" bash -c 'ps axf | grep karaf | grep -v grep | awk '"'"'{print "kill -9 " $1}'"'"' | sh'
done
+
sleep 5
for i in `seq 1 ${NUM_ODL_SYSTEM}`
do
CONTROLLERIP=ODL_SYSTEM_${i}_IP
- ssh "${!CONTROLLERIP}" xz -9ekvv "/tmp/${BUNDLEFOLDER}/data/log/karaf.log"
- scp "${!CONTROLLERIP}:/tmp/${BUNDLEFOLDER}/data/log/karaf.log.xz" "odl${i}_karaf.log.xz"
+ ssh "${!CONTROLLERIP}" "cp -r /tmp/${BUNDLEFOLDER}/data/log /tmp/odl_log"
+ ssh "${!CONTROLLERIP}" "tar -cf /tmp/odl${i}_karaf.log.tar /tmp/odl_log/*"
+ scp "${!CONTROLLERIP}:/tmp/odl${i}_karaf.log.tar" "${WORKSPACE}/odl${i}_karaf.log.tar"
+ tar -xvf ${WORKSPACE}/odl${i}_karaf.log.tar -C . --strip-components 2 --transform s/karaf/odl${i}_karaf/g
+ rm ${WORKSPACE}/odl${i}_karaf.log.tar
done
-ssh ${OPENSTACK_CONTROL_NODE_IP} "xz -9ekvv /opt/stack/devstack/nohup.out"
-scp ${OPENSTACK_CONTROL_NODE_IP}:/opt/stack/devstack/nohup.out.xz "openstack_control_stack.log.xz"
+scp ${OPENSTACK_CONTROL_NODE_IP}:/opt/stack/devstack/nohup.out "openstack_control_stack.log"
for i in `seq 1 $((NUM_OPENSTACK_SYSTEM - 1))`
do
OSIP=OPENSTACK_COMPUTE_NODE_${i}_IP
done
}
+cat > ${WORKSPACE}/disable_firewall.sh << EOF
+sudo systemctl stop firewalld
+sudo systemctl stop iptables
+true
+EOF
+
cat > ${WORKSPACE}/get_devstack.sh << EOF
sudo systemctl stop firewalld
sudo yum install bridge-utils -y
+sudo systemctl stop NetworkManager
+#Disable NetworkManager and kill dhclient and dnsmasq
+sudo systemctl stop NetworkManager
+sudo killall dhclient
+sudo killall dnsmasq
#Workaround for mysql failure
echo "127.0.0.1 localhost \${HOSTNAME}" > /tmp/hosts
echo "::1 localhost \${HOSTNAME}" >> /tmp/hosts
sudo mv /tmp/hosts /etc/hosts
sudo /usr/sbin/brctl addbr br100
+sudo ifconfig eth0 mtu 2000
sudo mkdir /opt/stack
sudo chmod 777 /opt/stack
cd /opt/stack
fi
done
+#Need to disable firewalld and iptables in control node
+echo "Stop Firewall in Control Node for compute nodes to be able to reach the ports and add to hypervisor-list"
+scp ${WORKSPACE}/disable_firewall.sh ${OPENSTACK_CONTROL_NODE_IP}:/tmp
+ssh ${OPENSTACK_CONTROL_NODE_IP} "sudo bash /tmp/disable_firewall.sh"
+echo "sleep for a minute and print hypervisor-list"
+sleep 60
+ssh ${OPENSTACK_CONTROL_NODE_IP} "cd /opt/stack/devstack; source openrc admin admin; nova hypervisor-list;nova-manage service list"
+
+#Need to disable firewalld and iptables in compute nodes as well
+for i in `seq 1 $((NUM_OPENSTACK_SYSTEM - 1))`
+do
+ OSIP=OPENSTACK_COMPUTE_NODE_${i}_IP
+ scp ${WORKSPACE}/disable_firewall.sh "${!OSIP}:/tmp"
+ ssh "${!OSIP}" "sudo bash /tmp/disable_firewall.sh"
+done
+
+# upgrading pip, urllib3 and httplib2 so that tempest tests can be run on ${OPENSTACK_CONTROL_NODE_IP}
+# this needs to happen after devstack runs because it seems devstack is pulling in specific versions
+# of these libs that are not working for tempest.
+ssh ${OPENSTACK_CONTROL_NODE_IP} "sudo pip install --upgrade pip"
+ssh ${OPENSTACK_CONTROL_NODE_IP} "sudo pip install urllib3 --upgrade"
+ssh ${OPENSTACK_CONTROL_NODE_IP} "sudo pip install httplib2 --upgrade"
+
echo "Locating test plan to use..."
testplan_filepath="${WORKSPACE}/test/csit/testplans/${STREAMTESTPLAN}"
if [ ! -f "${testplan_filepath}" ]; then
echo "Starting Robot test suites ${SUITES} ..."
pybot -N ${TESTPLAN} -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp -v BUNDLE_URL:${ACTUALBUNDLEURL} \
-v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} -v JDKVERSION:${JDKVERSION} -v ODL_STREAM:${DISTROSTREAM} \
--v CONTROLLER:${ODL_SYSTEM_IP} -v CONTROLLER1:${ODL_SYSTEM_2_IP} -v CONTROLLER2:${ODL_SYSTEM_3_IP} -v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} \
--v NUM_ODL_SYSTEM:${NUM_ODL_SYSTEM} -v CONTROLLER_USER:${USER} -v OS_USER:${USER} \
+-v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} -v ODL_SYSTEM_1_IP:${ODL_SYSTEM_1_IP} -v ODL_SYSTEM_2_IP:${ODL_SYSTEM_2_IP} \
+-v ODL_SYSTEM_3_IP:${ODL_SYSTEM_3_IP} -v NUM_ODL_SYSTEM:${NUM_ODL_SYSTEM} -v CONTROLLER_USER:${USER} -v OS_USER:${USER} \
-v NUM_OS_SYSTEM:${NUM_OPENSTACK_SYSTEM} -v OS_CONTROL_NODE_IP:${OPENSTACK_CONTROL_NODE_IP} \
+-v OS_COMPUTE_1_IP:${OPENSTACK_COMPUTE_NODE_1_IP} -v OS_COMPUTE_2_IP:${OPENSTACK_COMPUTE_NODE_2_IP} \
-v DEVSTACK_DEPLOY_PATH:/opt/stack/devstack -v USER_HOME:${HOME} ${TESTOPTIONS} ${SUITES} || true
echo "Tests Executed"