Browse code

Make ironic's service check flexible

We currently assume we are deploying ironic with the rest of
a cloud and assert that glance/neutron/nova are enabled. This
makes it a bit more flexible and allows deploying with only
the minimum required services if desired, and asserts the others
are enabled when we intend on testing nova+ironic integration.

This is required for in-tree python-ironicclient functional tests,
which we aim to run against a minimal devstack deployment.

Change-Id: I99001d151161fa225b97c3ba6b167a61aa9b59fe

Adam Gandelman authored on 2015/03/12 09:15:42
Showing 2 changed files
... ...
@@ -180,7 +180,11 @@ function is_deployed_with_ipa_ramdisk {
180 180
 # install_ironic() - Collect source and prepare
181 181
 function install_ironic {
182 182
     # make sure all needed service were enabled
183
-    for srv in nova glance key; do
183
+    local req_services="mysql rabbit key"
184
+    if [[ "$VIRT_DRIVER" == "ironic" ]]; then
185
+        req_services+=" nova glance neutron"
186
+    fi
187
+    for srv in $req_services; do
184 188
         if ! is_service_enabled "$srv"; then
185 189
             die $LINENO "$srv should be enabled for Ironic."
186 190
         fi
... ...
@@ -54,9 +54,7 @@ function configure_nova_hypervisor {
54 54
 
55 55
 # install_nova_hypervisor() - Install external components
56 56
 function install_nova_hypervisor {
57
-    if ! is_service_enabled neutron; then
58
-        die $LINENO "Neutron should be enabled for usage of the Ironic Nova driver."
59
-    elif is_ironic_hardware; then
57
+    if is_ironic_hardware; then
60 58
         return
61 59
     fi
62 60
     install_libvirt