diff --git a/mattermost/hooks/init b/mattermost/hooks/init index c29d44c..216ceaa 100755 --- a/mattermost/hooks/init +++ b/mattermost/hooks/init @@ -19,9 +19,9 @@ dirs=("$SERVICE_CONFIGSTORE/mattermost/"{config,plugins} "$SERVICE_DATASTORE/mat for dir in "${dirs[@]}"; do mkdir -p "$dir" find "$dir" \! -uid 2000 -print0 | while read-0 f; do - chown -v 2000 "$f" + chown -v 2000 "$f" || exit 1 done find "$dir" \! -gid 2000 -print0 | while read-0 f; do - chgrp -v 2000 "$f" + chgrp -v 2000 "$f" || exit 1 done done diff --git a/mongo/hooks/init b/mongo/hooks/init index 8cc5bb2..d2e6a60 100755 --- a/mongo/hooks/init +++ b/mongo/hooks/init @@ -39,8 +39,9 @@ for dir in "${dirs[@]}"; do done mkdir -p "${host_dirs[@]}" -find "${host_dirs[@]}" \! -user "$uid" \ - -exec chown -v "$uid" {} + || true +find "${host_dirs[@]}" \! -user "$uid" -print0 | while read-0 f; do + chown -v "$uid" "$f" || exit 1 +done config_hash=$(cat "$CONFIG" | md5_compat) || exit 1 diff --git a/odoo-tecnativa/hooks/init b/odoo-tecnativa/hooks/init index 8f4c985..e208b4b 100755 --- a/odoo-tecnativa/hooks/init +++ b/odoo-tecnativa/hooks/init @@ -21,7 +21,9 @@ odoo_uid=$(get_odoo_uid) mkdir -p "$LIB" ## XXXvlab: this one can fail if files are removed (from sessions dir) -find "$LIB" \! -user "$odoo_uid" -exec chown -v "$odoo_uid" {} + || true +find "$LIB" \! -user "$odoo_uid" -print0 | while read-0 f; do + chown -v "$odoo_uid" "$f" || exit 1 +done ## workers management workers=$(options-get workers 2>&1) || true diff --git a/peertube/hooks/init b/peertube/hooks/init index b883f62..f87180e 100755 --- a/peertube/hooks/init +++ b/peertube/hooks/init @@ -80,8 +80,8 @@ for dir in "${dirs[@]}"; do done mkdir -p "${host_dirs[@]}" -find "${host_dirs[@]}" \! -user "$peertube_uid" \ - -exec chown -v "$peertube_uid" {} + || true - +find "${host_dirs[@]}" \! -user "$peertube_uid" -print0 | while read-0 f; do + chown -v "$peertube_uid" "$f" || exit 1 +done true \ No newline at end of file diff --git a/redis/hooks/init b/redis/hooks/init index c2db0ff..1fff55d 100755 --- a/redis/hooks/init +++ b/redis/hooks/init @@ -47,9 +47,9 @@ for dir in "${dirs[@]}"; do done mkdir -p "${host_dirs[@]}" -find "${host_dirs[@]}" \! -user "$uid" \ - -exec chown -v "$uid" {} + || true - +find "${host_dirs[@]}" \! -user "$uid" -print0 | while read-0 f; do + chown -v "$uid" "$f" || exit 1 +done config_hash=$(cat "$CONFIG" | md5_compat) || exit 1 init-config-add " diff --git a/rocketchat/hooks/init b/rocketchat/hooks/init index 4713f0d..583c406 100755 --- a/rocketchat/hooks/init +++ b/rocketchat/hooks/init @@ -21,6 +21,6 @@ for dir in "${dirs[@]}"; do done mkdir -p "${host_dirs[@]}" -find "${host_dirs[@]}" \! -user "$uid" \ - -exec chown -v "$uid" {} + || true - +find "${host_dirs[@]}" \! -user "$uid" -print0 | while read-0 f; do + chown -v "$uid" "$f" || exit 1 +done \ No newline at end of file diff --git a/synapse/lib/common b/synapse/lib/common index 2ee6d02..ae3fb1a 100644 --- a/synapse/lib/common +++ b/synapse/lib/common @@ -36,8 +36,12 @@ setup_dirs() { gid="${uid_gid[1]}" for dir in "${dirs[@]}"; do mkdir -p "$dir" - find "$dir" \! -uid "$uid" -exec chown -v "$uid" {} \; - find "$dir" \! -gid "$gid" -exec chgrp -v "$gid" {} \; + find "$dir" \! -uid "$uid" -print0 | while read-0 f; do + chown -v "$uid" "$f" || return 1 + done + find "$dir" \! -gid "$gid" -print0 | while read-0 f; do + chgrp -v "$gid" "$f" || return 1 + done done dirs=(