ironic/devstack/plugin.sh
Pavlo Shchelokovskyy 15de01a5f6 Configure clean network to provision network
Currently when setting up Ironic with multi-tenancy support,
the DevStack plugin by default still sets the cleaning network
to the default private network of the demo project,
which is not exactly correct.

Change the DevStack plugin so that the cleaning network
is the same as provisioning network if IRONIC_CLEAN_NET_NAME is not set:

- In case of multi-tenancy support enabled, use the created separate
provisioning network
- w/o multi-tenancy support use the default private network.

If the IRONIC_CLEAN_NET_NAME is provided, use that.

Change-Id: I9db8f5e3000f05d27a3fa8fc94cfdafe34a6f48a
2016-09-12 11:50:56 +03:00

80 lines
2.5 KiB
Bash

#!/bin/bash
# plugin.sh - devstack plugin for ironic
# devstack plugin contract defined at:
# http://docs.openstack.org/developer/devstack/plugins.html
echo_summary "ironic's plugin.sh was called..."
source $DEST/ironic/devstack/lib/ironic
if is_service_enabled ir-api ir-cond; then
if [[ "$1" == "stack" ]]; then
if [[ "$2" == "install" ]]; then
# stack/install - Called after the layer 1 and 2 projects source and
# their dependencies have been installed
echo_summary "Installing Ironic"
install_ironic
install_ironicclient
cleanup_ironic_config_files
elif [[ "$2" == "post-config" ]]; then
# stack/post-config - Called after the layer 1 and 2 services have been
# configured. All configuration files for enabled services should exist
# at this point.
echo_summary "Configuring Ironic"
configure_ironic
if is_service_enabled key; then
create_ironic_accounts
fi
elif [[ "$2" == "extra" ]]; then
# stack/extra - Called near the end after layer 1 and 2 services have
# been started.
# Initialize ironic
init_ironic
if [[ "$IRONIC_BAREMETAL_BASIC_OPS" == "True" && "$IRONIC_IS_HARDWARE" == "False" ]]; then
echo_summary "Creating bridge and VMs"
create_bridge_and_vms
fi
if is_service_enabled neutron; then
echo_summary "Configuring Ironic networks"
configure_ironic_networks
fi
# Start the ironic API and ironic taskmgr components
echo_summary "Starting Ironic"
start_ironic
prepare_baremetal_basic_ops
elif [[ "$2" == "test-config" ]]; then
# stack/test-config - Called at the end of devstack used to configure tempest
# or any other test environments
if is_service_enabled tempest; then
echo_summary "Configuring Tempest for Ironic needs"
ironic_configure_tempest
fi
fi
fi
if [[ "$1" == "unstack" ]]; then
# unstack - Called by unstack.sh before other services are shut down.
stop_ironic
cleanup_ironic_provision_network
cleanup_baremetal_basic_ops
fi
if [[ "$1" == "clean" ]]; then
# clean - Called by clean.sh before other services are cleaned, but after
# unstack.sh has been called.
cleanup_ironic
fi
fi