Files
DFWebOS-Apps/wavelog/hooks/pre-start

29 lines
818 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
# Мы вынуждены использовать user/group 33 (www-data)
# Поэтому мы устанавливаем владельца каталогов данных на 33:33.
APP_DATA_DIR="$(readlink -f $(dirname "${BASH_SOURCE[0]}")/..)/data"
DESIRED_OWNER="33:33"
CONFIG_DATA_DIR="${APP_DATA_DIR}/config"
UPLOADS_DATA_DIR="${APP_DATA_DIR}/uploads"
USERDATA_DATA_DIR="${APP_DATA_DIR}/userdata"
wavelog_correct_permission() {
local -r path="${1}"
if [[ -d "${path}" ]]; then
owner=$(stat -c "%u:%g" "${path}")
if [[ "${owner}" != "${DESIRED_OWNER}" ]]; then
chown "${DESIRED_OWNER}" "${path}"
fi
fi
}
wavelog_correct_permission "${CONFIG_DATA_DIR}"
wavelog_correct_permission "${UPLOADS_DATA_DIR}"
wavelog_correct_permission "${USERDATA_DATA_DIR}"