Test nova server (VM) boot in overcloud job

We use the demo script from kolla ansible, init-runonce, to create
resources in the control plane to make it ready for booting a VM. We
then create a nova server, and wait for it to become active. We do not
currently test that the VM boots successfully by accessing it via SSH.

Change-Id: I61be554366565decd9f4ff7805a3969aa37da4b9
This commit is contained in:
Mark Goddard 2018-04-13 15:52:43 +01:00
parent 424d0f9c51
commit 0ec7edffa7
3 changed files with 42 additions and 0 deletions

View File

@ -215,3 +215,24 @@ function overcloud_deploy {
echo "Control plane deployment complete"
}
function overcloud_test {
# Perform a simple smoke test against the cloud.
echo "Performing a simple smoke test"
environment_setup
pip install python-openstackclient
echo "Running kolla-ansible init-runonce"
source "${KOLLA_CONFIG_PATH:-/etc/kolla}/admin-openrc.sh"
${KOLLA_VENV_PATH:-$HOME/kolla-venv}/share/kolla-ansible/init-runonce
echo "Creating a VM"
openstack server create --wait --image cirros --flavor m1.tiny --key-name mykey --network demo-net demo1
openstack server show demo1
# TODO(mgoddard): Test SSH connectivity to the VM.
echo "Deleting the VM"
openstack server delete --wait demo1
}

16
dev/overcloud-test.sh Executable file
View File

@ -0,0 +1,16 @@
#!/bin/bash
set -eu
set -o pipefail
PARENT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "${PARENT}/functions"
function main {
config_init
overcloud_test
}
main

View File

@ -8,3 +8,8 @@
shell:
cmd: dev/overcloud-deploy.sh > {{ logs_dir }}/ansible/overcloud-deploy
chdir: "{{ kayobe_src_dir }}"
- name: Perform testing of the overcloud
shell:
cmd: dev/overcloud-test.sh > {{ logs_dir }}/ansible/overcloud-test
chdir: "{{ kayobe_src_dir }}"