Browse code

Creates SWIFT_DATA_DIR if it does not exist

If SWIFT_DATA_DIR is set on local.conf we need to make sure to create
the directory with proper permissions

Change-Id: If29fa53f01b4c0c8a881ec3734383ecffac334ce
Closes-Bug: 1302893

Geronimo Orozco authored on 2015/03/20 03:08:23
Showing 1 changed files
... ...
@@ -302,6 +302,7 @@ function configure_swift {
302 302
     local node_number
303 303
     local swift_node_config
304 304
     local swift_log_dir
305
+    local user_group
305 306
 
306 307
     # Make sure to kill all swift processes first
307 308
     swift-init --run-dir=${SWIFT_DATA_DIR}/run all stop || true
... ...
@@ -505,10 +506,12 @@ EOF
505 505
         fi
506 506
     fi
507 507
 
508
+    local user_group=$(id -g ${STACK_USER})
509
+    sudo install -d -o ${STACK_USER} -g ${user_group} ${SWIFT_DATA_DIR}
510
+
508 511
     local swift_log_dir=${SWIFT_DATA_DIR}/logs
509
-    rm -rf ${swift_log_dir}
510
-    mkdir -p ${swift_log_dir}/hourly
511
-    sudo chown -R ${STACK_USER}:adm ${swift_log_dir}
512
+    sudo rm -rf ${swift_log_dir}
513
+    sudo install -d -o ${STACK_USER} -g adm ${swift_log_dir}/hourly
512 514
 
513 515
     if [[ $SYSLOG != "False" ]]; then
514 516
         sed "s,%SWIFT_LOGDIR%,${swift_log_dir}," $FILES/swift/rsyslog.conf | sudo \