kolla-ansible/tests/test-scenario-nfv.sh

79 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
set -o xtrace
set -o errexit
# Enable unbuffered output for Ansible in Jenkins.
export PYTHONUNBUFFERED=1
function test_tacker {
echo "TESTING: Tacker VIM,VNFD and VNF creation"
sh contrib/demos/tacker/deploy-tacker-demo
openstack vim list
openstack vnf list
openstack vnf descriptor list
while [[ $(openstack vnf show kolla-sample-vnf -f value -c status) != "ACTIVE" ]]; do
echo "VNF not running yet"
attempt=$((attempt+1))
if [[ $attempt -eq 10 ]]; then
echo "VNF failed to start"
openstack vnf show kolla-sample-vnf
return 1
fi
sleep 10
done
}
function test_barbican {
echo "TESTING: Barbican"
openstack secret list
}
function test_mistral {
echo "TESTING: Mistral"
openstack workflow list
openstack workflow execution list
openstack action execution list
}
function test_nova {
echo "TESTING: Nova"
openstack server list
}
function test_heat {
echo "TESTING: Heat"
openstack stack list
}
function install_requirements {
echo "TESTING: Install requirements"
sudo -H pip install --ignore-installed -U "python-tackerclient" "python-heatclient" "networking-sfc" "python-mistralclient" "python-barbicanclient"
}
function test_scenario_nfv_logged {
. /etc/kolla/admin-openrc.sh
install_requirements
test_tacker
test_barbican
test_mistral
test_nova
test_heat
}
function test_scenario_nfv {
echo "Testing Scenario NFV"
test_scenario_nfv_logged > /tmp/logs/ansible/test-scenario-nfv 2>&1
result=$?
if [[ $result != 0 ]]; then
echo "Testing Scenario NFV failed. See ansible/test-scenario-nfv for details"
else
echo "Successfully Scenario NFV. See ansible/test-scenario-nfv for details"
fi
return $result
}
test_scenario_nfv