| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,33 @@ |
| 0 |
+# ironic.sh - Devstack extras script to install ironic |
|
| 1 |
+ |
|
| 2 |
+if is_service_enabled ir-api ir-cond; then |
|
| 3 |
+ if [[ "$1" == "source" ]]; then |
|
| 4 |
+ # Initial source |
|
| 5 |
+ source $TOP_DIR/lib/ironic |
|
| 6 |
+ elif [[ "$1" == "stack" && "$2" == "install" ]]; then |
|
| 7 |
+ echo_summary "Installing Ironic" |
|
| 8 |
+ install_ironic |
|
| 9 |
+ install_ironicclient |
|
| 10 |
+ cleanup_ironic |
|
| 11 |
+ elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then |
|
| 12 |
+ echo_summary "Configuring Ironic" |
|
| 13 |
+ configure_ironic |
|
| 14 |
+ |
|
| 15 |
+ if is_service_enabled key; then |
|
| 16 |
+ create_ironic_accounts |
|
| 17 |
+ fi |
|
| 18 |
+ |
|
| 19 |
+ elif [[ "$1" == "stack" && "$2" == "extra" ]]; then |
|
| 20 |
+ # Initialize ironic |
|
| 21 |
+ init_ironic |
|
| 22 |
+ |
|
| 23 |
+ # Start the ironic API and ironic taskmgr components |
|
| 24 |
+ echo_summary "Starting Ironic" |
|
| 25 |
+ start_ironic |
|
| 26 |
+ fi |
|
| 27 |
+ |
|
| 28 |
+ if [[ "$1" == "unstack" ]]; then |
|
| 29 |
+ stop_ironic |
|
| 30 |
+ cleanup_ironic |
|
| 31 |
+ fi |
|
| 32 |
+fi |
| ... | ... |
@@ -49,6 +49,13 @@ TEMPEST_SERVICES+=,ironic |
| 49 | 49 |
# Functions |
| 50 | 50 |
# --------- |
| 51 | 51 |
|
| 52 |
+# Test if any Ironic services are enabled |
|
| 53 |
+# is_ironic_enabled |
|
| 54 |
+function is_ironic_enabled {
|
|
| 55 |
+ [[ ,${ENABLED_SERVICES} =~ ,"ir-" ]] && return 0
|
|
| 56 |
+ return 1 |
|
| 57 |
+} |
|
| 58 |
+ |
|
| 52 | 59 |
# install_ironic() - Collect source and prepare |
| 53 | 60 |
function install_ironic() {
|
| 54 | 61 |
git_clone $IRONIC_REPO $IRONIC_DIR $IRONIC_BRANCH |
| ... | ... |
@@ -336,7 +336,6 @@ source $TOP_DIR/lib/heat |
| 336 | 336 |
source $TOP_DIR/lib/neutron |
| 337 | 337 |
source $TOP_DIR/lib/baremetal |
| 338 | 338 |
source $TOP_DIR/lib/ldap |
| 339 |
-source $TOP_DIR/lib/ironic |
|
| 340 | 339 |
|
| 341 | 340 |
# Extras Source |
| 342 | 341 |
# -------------- |
| ... | ... |
@@ -746,11 +745,6 @@ if is_service_enabled tls-proxy; then |
| 746 | 746 |
# don't be naive and add to existing line! |
| 747 | 747 |
fi |
| 748 | 748 |
|
| 749 |
-if is_service_enabled ir-api ir-cond; then |
|
| 750 |
- install_ironic |
|
| 751 |
- install_ironicclient |
|
| 752 |
- configure_ironic |
|
| 753 |
-fi |
|
| 754 | 749 |
|
| 755 | 750 |
# Extras Install |
| 756 | 751 |
# -------------- |
| ... | ... |
@@ -966,15 +960,6 @@ if is_service_enabled g-reg; then |
| 966 | 966 |
fi |
| 967 | 967 |
|
| 968 | 968 |
|
| 969 |
-# Ironic |
|
| 970 |
-# ------ |
|
| 971 |
- |
|
| 972 |
-if is_service_enabled ir-api ir-cond; then |
|
| 973 |
- echo_summary "Configuring Ironic" |
|
| 974 |
- init_ironic |
|
| 975 |
-fi |
|
| 976 |
- |
|
| 977 |
- |
|
| 978 | 969 |
# Neutron |
| 979 | 970 |
# ------- |
| 980 | 971 |
|
| ... | ... |
@@ -1101,12 +1086,6 @@ if is_service_enabled g-api g-reg; then |
| 1101 | 1101 |
start_glance |
| 1102 | 1102 |
fi |
| 1103 | 1103 |
|
| 1104 |
-# Launch the Ironic services |
|
| 1105 |
-if is_service_enabled ir-api ir-cond; then |
|
| 1106 |
- echo_summary "Starting Ironic" |
|
| 1107 |
- start_ironic |
|
| 1108 |
-fi |
|
| 1109 |
- |
|
| 1110 | 1104 |
# Create an access key and secret key for nova ec2 register image |
| 1111 | 1105 |
if is_service_enabled key && is_service_enabled swift3 && is_service_enabled nova; then |
| 1112 | 1106 |
NOVA_USER_ID=$(keystone user-list | grep ' nova ' | get_field 1) |
| ... | ... |
@@ -55,7 +55,6 @@ source $TOP_DIR/lib/heat |
| 55 | 55 |
source $TOP_DIR/lib/neutron |
| 56 | 56 |
source $TOP_DIR/lib/baremetal |
| 57 | 57 |
source $TOP_DIR/lib/ldap |
| 58 |
-source $TOP_DIR/lib/ironic |
|
| 59 | 58 |
|
| 60 | 59 |
# Extras Source |
| 61 | 60 |
# -------------- |
| ... | ... |
@@ -118,12 +117,6 @@ if is_service_enabled s-proxy; then |
| 118 | 118 |
cleanup_swift |
| 119 | 119 |
fi |
| 120 | 120 |
|
| 121 |
-# Ironic runs daemons |
|
| 122 |
-if is_service_enabled ir-api ir-cond; then |
|
| 123 |
- stop_ironic |
|
| 124 |
- cleanup_ironic |
|
| 125 |
-fi |
|
| 126 |
- |
|
| 127 | 121 |
# Apache has the WSGI processes |
| 128 | 122 |
if is_service_enabled horizon; then |
| 129 | 123 |
stop_horizon |