summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorspisarski <s.pisarski@cablelabs.com>2016-06-22 08:49:24 -0600
committerspisarski <s.pisarski@cablelabs.com>2016-07-06 13:21:18 -0600
commitc1b82d85dcf815764cb4247bedfee4ca491e2d57 (patch)
tree3a377abc7a62811bf89ad6671bc25b71db4e7bf8
parent6e26a8b75cb70ba0af3aae82733ea70127dd616b (diff)
Scripts for running smoke tests on the undercloud VM.
Tested against Apex Brahmaputra as I have had many issues getting a Colorado environment up and running. Moved Ansible playbooks and scripts from ci/smoke_tests/ to tests/smoke_tests/ Rebase to master... Change-Id: I09273de659c76d32ccfb74a548dabf7f84c65d6d Signed-off-by: spisarski <s.pisarski@cablelabs.com>
-rwxr-xr-xci/run_smoke_tests.sh5
-rw-r--r--lib/utility-functions.sh13
-rwxr-xr-xtests/smoke_tests/execute_smoke_tests.sh6
-rw-r--r--tests/smoke_tests/execute_tests.yml9
-rw-r--r--tests/smoke_tests/prepare_undercloud.yml16
-rw-r--r--tests/smoke_tests/smoke_tests.yml3
6 files changed, 48 insertions, 4 deletions
diff --git a/ci/run_smoke_tests.sh b/ci/run_smoke_tests.sh
new file mode 100755
index 00000000..b0599527
--- /dev/null
+++ b/ci/run_smoke_tests.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+
+source ../lib/utility-functions.sh
+
+ansible-playbook -i "$(get_undercloud_ip)," ../tests/smoke_tests/smoke_tests.yml
diff --git a/lib/utility-functions.sh b/lib/utility-functions.sh
index 93050701..f73a2d85 100644
--- a/lib/utility-functions.sh
+++ b/lib/utility-functions.sh
@@ -15,14 +15,19 @@ function undercloud_connect {
fi
if [ -z "$2" ]; then
- ssh ${SSH_OPTIONS[@]} ${user}@$(arp -a | grep $(virsh domiflist undercloud | grep default |\
- awk '{print $5}') | grep -Eo "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+")
+ ssh ${SSH_OPTIONS[@]} ${user}@$(get_undercloud_ip)
else
- ssh ${SSH_OPTIONS[@]} -T ${user}@$(arp -a | grep $(virsh domiflist undercloud | grep default \
- | awk '{print $5}') | grep -Eo "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+") "$2"
+ ssh ${SSH_OPTIONS[@]} -T ${user}@$(get_undercloud_ip) "$2"
fi
}
+##outputs the Undercloud's IP address
+##params: none
+function get_undercloud_ip {
+ echo $(arp -a | grep $(virsh domiflist undercloud | grep default |\
+ awk '{print $5}') | grep -Eo "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+")
+}
+
##connects to overcloud nodes
##params: node to login to, command to execute on overcloud (optional)
function overcloud_connect {
diff --git a/tests/smoke_tests/execute_smoke_tests.sh b/tests/smoke_tests/execute_smoke_tests.sh
new file mode 100755
index 00000000..245ccc53
--- /dev/null
+++ b/tests/smoke_tests/execute_smoke_tests.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+cd ~/provisioning/python
+export PYTHONPATH=$PYTHONPATH:$(pwd)
+
+python unit_test_suite.py ~stack/overcloudrc \ No newline at end of file
diff --git a/tests/smoke_tests/execute_tests.yml b/tests/smoke_tests/execute_tests.yml
new file mode 100644
index 00000000..e2326560
--- /dev/null
+++ b/tests/smoke_tests/execute_tests.yml
@@ -0,0 +1,9 @@
+---
+- hosts: all
+ sudo: yes
+
+ tasks:
+ - name: Copy execute_smoke_tests.sh
+ copy: src=execute_smoke_tests.sh dest=~/execute_smoke_tests.sh mode=0755
+ - name: Execute Tests
+ command: sh ~/execute_smoke_tests.sh | tee ~/unit_tests.out \ No newline at end of file
diff --git a/tests/smoke_tests/prepare_undercloud.yml b/tests/smoke_tests/prepare_undercloud.yml
new file mode 100644
index 00000000..8f0cb709
--- /dev/null
+++ b/tests/smoke_tests/prepare_undercloud.yml
@@ -0,0 +1,16 @@
+---
+- hosts: all
+ sudo: yes
+
+ tasks:
+ - yum: name=libffi
+ - yum: name=libffi-devel
+ - pip: name=python-keystoneclient
+ - pip: name=python-glanceclient
+ - pip: name=python-neutronclient
+ - pip: name=python-novaclient
+ - pip: name=scp
+ - pip: name=PyYAML
+ - pip: name=ansible==2.1.0
+
+ - git: repo=https://nougat.cablelabs.com/SNAPS/provisioning.git dest=~/provisioning
diff --git a/tests/smoke_tests/smoke_tests.yml b/tests/smoke_tests/smoke_tests.yml
new file mode 100644
index 00000000..b67c194f
--- /dev/null
+++ b/tests/smoke_tests/smoke_tests.yml
@@ -0,0 +1,3 @@
+---
+- include: prepare_undercloud.yml
+- include: execute_tests.yml \ No newline at end of file