Browse code

Allow removing services explicitly.

- When adding a - (hyphen) at the begining of a service in
ENABLED_SERVICES the service will be removed explicitly.

Change-Id: I69ce082d13b79aa88426e8012a941c4ae99741f6

Chmouel Boudjnah authored on 2012/06/27 18:01:40
Showing 2 changed files
... ...
@@ -89,6 +89,16 @@ DEST=${DEST:-/opt/stack}
89 89
 # Sanity Check
90 90
 # ============
91 91
 
92
+# We are looking for services with a - at the beginning to force
93
+# excluding those services. For example if you want to install all the default
94
+# services but not nova-volume (n-vol) you can have this set in your localrc :
95
+# ENABLED_SERVICES+=",-n-vol"
96
+for service in ${ENABLED_SERVICES//,/ }; do
97
+    if [[ ${service} == -* ]]; then
98
+        ENABLED_SERVICES=$(echo ${ENABLED_SERVICES}|sed -r "s/(,)?(-)?${service#-}(,)?/,/g")
99
+    fi
100
+done
101
+
92 102
 # Warn users who aren't on an explicitly supported distro, but allow them to
93 103
 # override check and attempt installation with ``FORCE=yes ./stack``
94 104
 if [[ ! ${DISTRO} =~ (oneiric|precise|quantal|f16) ]]; then
... ...
@@ -6,7 +6,12 @@ RC_DIR=$(cd $(dirname "$BASH_SOURCE") && pwd)
6 6
 # by default you can append them in your ENABLED_SERVICES variable in
7 7
 # your localrc. For example for swift you can just add this in your
8 8
 # localrc to add it with the other services:
9
-# ENABLED_SERVICES="$ENABLED_SERVICES,swift"
9
+# ENABLED_SERVICES+=,swift
10
+#
11
+# If you like to explicitly remove services you can add a -$service in
12
+# ENABLED_SERVICES, for example in your localrc to install all defaults but not
13
+# nova-volume you would just need to set this :
14
+# ENABLED_SERVICES+=,-n-vol
10 15
 ENABLED_SERVICES=g-api,g-reg,key,n-api,n-crt,n-obj,n-cpu,n-net,n-vol,n-sch,n-novnc,n-xvnc,n-cauth,horizon,mysql,rabbit
11 16
 
12 17
 # Set the default Nova APIs to enable