Browse code

define variables for Trove to be used in local.conf

This defines a number of variables for Trove configuration files
and options
In addition to general cleanup within devstack, this also enables
consumers to enable features such as Openstack profiling, without
the need to repeat the hardcoding of these parameters in their
local.conf

Change-Id: Ieaa999ea3ca5c4f7d320416a8d2375c9a1d03d39
closes-bug: #1421403

Brian Hunter authored on 2015/02/13 06:14:02
Showing 1 changed files
... ...
@@ -34,7 +34,13 @@ GITDIR["python-troveclient"]=$DEST/python-troveclient
34 34
 
35 35
 TROVE_DIR=$DEST/trove
36 36
 TROVE_CONF_DIR=/etc/trove
37
+TROVE_CONF=$TROVE_CONF_DIR/trove.conf
38
+TROVE_TASKMANAGER_CONF=$TROVE_CONF_DIR/trove-taskmanager.conf
39
+TROVE_CONDUCTOR_CONF=$TROVE_CONF_DIR/trove-conductor.conf
40
+TROVE_API_PASTE_INI=$TROVE_CONF_DIR/api-paste.ini
41
+
37 42
 TROVE_LOCAL_CONF_DIR=$TROVE_DIR/etc/trove
43
+TROVE_LOCAL_API_PASTE_INI=$TROVE_LOCAL_CONF_DIR/api-paste.ini
38 44
 TROVE_AUTH_CACHE_DIR=${TROVE_AUTH_CACHE_DIR:-/var/cache/trove}
39 45
 TROVE_DATASTORE_TYPE=${TROVE_DATASTORE_TYPE:-"mysql"}
40 46
 TROVE_DATASTORE_VERSION=${TROVE_DATASTORE_VERSION:-"5.5"}
... ...
@@ -46,6 +52,7 @@ if [[ -d $TROVE_DIR/bin ]]; then
46 46
 else
47 47
     TROVE_BIN_DIR=$(get_python_exec_prefix)
48 48
 fi
49
+TROVE_MANAGE=$TROVE_BIN_DIR/trove-manage
49 50
 
50 51
 # Tell Tempest this project is present
51 52
 TEMPEST_SERVICES+=,trove
... ...
@@ -119,48 +126,48 @@ function configure_trove {
119 119
     sudo chown -R $STACK_USER: ${TROVE_AUTH_CACHE_DIR}
120 120
 
121 121
     # Copy api-paste file over to the trove conf dir
122
-    cp $TROVE_LOCAL_CONF_DIR/api-paste.ini $TROVE_CONF_DIR/api-paste.ini
122
+    cp $TROVE_LOCAL_API_PASTE_INI $TROVE_API_PASTE_INI
123 123
 
124 124
     # (Re)create trove conf files
125
-    rm -f $TROVE_CONF_DIR/trove.conf
126
-    rm -f $TROVE_CONF_DIR/trove-taskmanager.conf
127
-    rm -f $TROVE_CONF_DIR/trove-conductor.conf
125
+    rm -f $TROVE_CONF
126
+    rm -f $TROVE_TASKMANAGER_CONF
127
+    rm -f $TROVE_CONDUCTOR_CONF
128 128
 
129
-    iniset $TROVE_CONF_DIR/trove.conf DEFAULT rabbit_userid $RABBIT_USERID
130
-    iniset $TROVE_CONF_DIR/trove.conf DEFAULT rabbit_password $RABBIT_PASSWORD
131
-    iniset $TROVE_CONF_DIR/trove.conf DEFAULT sql_connection `database_connection_url trove`
132
-    iniset $TROVE_CONF_DIR/trove.conf DEFAULT default_datastore $TROVE_DATASTORE_TYPE
133
-    setup_trove_logging $TROVE_CONF_DIR/trove.conf
134
-    iniset $TROVE_CONF_DIR/trove.conf DEFAULT trove_api_workers "$API_WORKERS"
129
+    iniset $TROVE_CONF DEFAULT rabbit_userid $RABBIT_USERID
130
+    iniset $TROVE_CONF DEFAULT rabbit_password $RABBIT_PASSWORD
131
+    iniset $TROVE_CONF DEFAULT sql_connection `database_connection_url trove`
132
+    iniset $TROVE_CONF DEFAULT default_datastore $TROVE_DATASTORE_TYPE
133
+    setup_trove_logging $TROVE_CONF
134
+    iniset $TROVE_CONF DEFAULT trove_api_workers "$API_WORKERS"
135 135
 
136
-    configure_auth_token_middleware $TROVE_CONF_DIR/trove.conf trove $TROVE_AUTH_CACHE_DIR
136
+    configure_auth_token_middleware $TROVE_CONF trove $TROVE_AUTH_CACHE_DIR
137 137
 
138 138
     # (Re)create trove taskmanager conf file if needed
139 139
     if is_service_enabled tr-tmgr; then
140 140
         TROVE_AUTH_ENDPOINT=$KEYSTONE_AUTH_URI/v$IDENTITY_API_VERSION
141 141
 
142
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT rabbit_userid $RABBIT_USERID
143
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT rabbit_password $RABBIT_PASSWORD
144
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT sql_connection `database_connection_url trove`
145
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT taskmanager_manager trove.taskmanager.manager.Manager
146
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT nova_proxy_admin_user radmin
147
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT nova_proxy_admin_tenant_name trove
148
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT nova_proxy_admin_pass $RADMIN_USER_PASS
149
-        iniset $TROVE_CONF_DIR/trove-taskmanager.conf DEFAULT trove_auth_url $TROVE_AUTH_ENDPOINT
150
-        setup_trove_logging $TROVE_CONF_DIR/trove-taskmanager.conf
142
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT rabbit_userid $RABBIT_USERID
143
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT rabbit_password $RABBIT_PASSWORD
144
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT sql_connection `database_connection_url trove`
145
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT taskmanager_manager trove.taskmanager.manager.Manager
146
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT nova_proxy_admin_user radmin
147
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT nova_proxy_admin_tenant_name trove
148
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT nova_proxy_admin_pass $RADMIN_USER_PASS
149
+        iniset $TROVE_TASKMANAGER_CONF DEFAULT trove_auth_url $TROVE_AUTH_ENDPOINT
150
+        setup_trove_logging $TROVE_TASKMANAGER_CONF
151 151
     fi
152 152
 
153 153
     # (Re)create trove conductor conf file if needed
154 154
     if is_service_enabled tr-cond; then
155
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT rabbit_userid $RABBIT_USERID
156
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT rabbit_password $RABBIT_PASSWORD
157
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT sql_connection `database_connection_url trove`
158
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT nova_proxy_admin_user radmin
159
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT nova_proxy_admin_tenant_name trove
160
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT nova_proxy_admin_pass $RADMIN_USER_PASS
161
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT trove_auth_url $TROVE_AUTH_ENDPOINT
162
-        iniset $TROVE_CONF_DIR/trove-conductor.conf DEFAULT control_exchange trove
163
-        setup_trove_logging $TROVE_CONF_DIR/trove-conductor.conf
155
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT rabbit_userid $RABBIT_USERID
156
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT rabbit_password $RABBIT_PASSWORD
157
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT sql_connection `database_connection_url trove`
158
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT nova_proxy_admin_user radmin
159
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT nova_proxy_admin_tenant_name trove
160
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT nova_proxy_admin_pass $RADMIN_USER_PASS
161
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT trove_auth_url $TROVE_AUTH_ENDPOINT
162
+        iniset $TROVE_CONDUCTOR_CONF DEFAULT control_exchange trove
163
+        setup_trove_logging $TROVE_CONDUCTOR_CONF
164 164
     fi
165 165
 
166 166
     # Set up Guest Agent conf
... ...
@@ -197,7 +204,7 @@ function init_trove {
197 197
     recreate_database trove
198 198
 
199 199
     # Initialize the trove database
200
-    $TROVE_BIN_DIR/trove-manage db_sync
200
+    $TROVE_MANAGE db_sync
201 201
 
202 202
     # If no guest image is specified, skip remaining setup
203 203
     [ -z "$TROVE_GUEST_IMAGE_URL" ] && return 0
... ...
@@ -214,19 +221,19 @@ function init_trove {
214 214
     fi
215 215
 
216 216
     # Now that we have the guest image id, initialize appropriate datastores / datastore versions
217
-    $TROVE_BIN_DIR/trove-manage datastore_update "$TROVE_DATASTORE_TYPE" ""
218
-    $TROVE_BIN_DIR/trove-manage datastore_version_update "$TROVE_DATASTORE_TYPE" "$TROVE_DATASTORE_VERSION" "$TROVE_DATASTORE_TYPE" \
217
+    $TROVE_MANAGE datastore_update "$TROVE_DATASTORE_TYPE" ""
218
+    $TROVE_MANAGE datastore_version_update "$TROVE_DATASTORE_TYPE" "$TROVE_DATASTORE_VERSION" "$TROVE_DATASTORE_TYPE" \
219 219
         "$TROVE_GUEST_IMAGE_ID" "$TROVE_DATASTORE_PACKAGE" 1
220
-    $TROVE_BIN_DIR/trove-manage datastore_version_update "$TROVE_DATASTORE_TYPE" "inactive_version" "inactive_manager" "$TROVE_GUEST_IMAGE_ID" "" 0
221
-    $TROVE_BIN_DIR/trove-manage datastore_update "$TROVE_DATASTORE_TYPE" "$TROVE_DATASTORE_VERSION"
222
-    $TROVE_BIN_DIR/trove-manage datastore_update "Inactive_Datastore" ""
220
+    $TROVE_MANAGE datastore_version_update "$TROVE_DATASTORE_TYPE" "inactive_version" "inactive_manager" "$TROVE_GUEST_IMAGE_ID" "" 0
221
+    $TROVE_MANAGE datastore_update "$TROVE_DATASTORE_TYPE" "$TROVE_DATASTORE_VERSION"
222
+    $TROVE_MANAGE datastore_update "Inactive_Datastore" ""
223 223
 }
224 224
 
225 225
 # start_trove() - Start running processes, including screen
226 226
 function start_trove {
227
-    run_process tr-api "$TROVE_BIN_DIR/trove-api --config-file=$TROVE_CONF_DIR/trove.conf --debug"
228
-    run_process tr-tmgr "$TROVE_BIN_DIR/trove-taskmanager --config-file=$TROVE_CONF_DIR/trove-taskmanager.conf --debug"
229
-    run_process tr-cond "$TROVE_BIN_DIR/trove-conductor --config-file=$TROVE_CONF_DIR/trove-conductor.conf --debug"
227
+    run_process tr-api "$TROVE_BIN_DIR/trove-api --config-file=$TROVE_CONF --debug"
228
+    run_process tr-tmgr "$TROVE_BIN_DIR/trove-taskmanager --config-file=$TROVE_TASKMANAGER_CONF --debug"
229
+    run_process tr-cond "$TROVE_BIN_DIR/trove-conductor --config-file=$TROVE_CONDUCTOR_CONF --debug"
230 230
 }
231 231
 
232 232
 # stop_trove() - Stop running processes