From f74e9b8ea8a3bc70a7a46b9c72a01a385578693f Mon Sep 17 00:00:00 2001 From: Valentin Lab Date: Sat, 11 Oct 2025 05:01:09 +0200 Subject: [PATCH] chg: dev: [opensem] move php dir creation from ``publish-dir`` to ``php-fpm`` --- opensem/hooks/php_fpm-relation-joined | 66 +++++++++++++++++++++ opensem/hooks/publish_dir-relation-joined | 71 ----------------------- 2 files changed, 66 insertions(+), 71 deletions(-) create mode 100755 opensem/hooks/php_fpm-relation-joined diff --git a/opensem/hooks/php_fpm-relation-joined b/opensem/hooks/php_fpm-relation-joined new file mode 100755 index 0000000..a1931d1 --- /dev/null +++ b/opensem/hooks/php_fpm-relation-joined @@ -0,0 +1,66 @@ +#!/bin/bash + +. lib/common + +set -e + +uid_gid=$(get_service_base_image_dir_uid_gid "$MASTER_TARGET_SERVICE_NAME" /var/www/html) || { + err "Could not determine uid:gid for $MASTER_TARGET_SERVICE_NAME of dir /var/www/html" + exit 1 +} +gid="${uid_gid#* }" + +dirs=( + /var/cache/opensem/bootstrap + /var/cache/opensem/framework + /var/cache/opensem/views + /var/lib/opensem/sessions + /var/lib/opensem/app + /var/lib/opensem/app/public + /var/log/opensem +) + + +to_create=() +volumes="" +for d in "${dirs[@]}"; do + fdir="${SERVICE_DATASTORE}$d" + if [ -d "$fdir" ]; then + find "$fdir" \! -gid "$gid" -print0 | while read-0 f; do + chgrp -v "$gid" "$f" || return 1 + done + find "$fdir" \! -perm -g+rwx -print0 | while read-0 f; do + chmod -v g+rwx "$f" || return 1 + done + else + to_create+=("$fdir") + fi +done + +if [ "${#to_create[@]}" -gt 0 ]; then + mkdir -p "${to_create[@]}" || return 1 + chgrp -v "${gid}" "${to_create[@]}" || return 1 + chmod g+rwx "${to_create[@]}" || return 1 +fi + +dev=$(options-get dev 2>/dev/null) || true +if [ -n "$dev" ]; then + # if ! [ -d "$dev" ]; then + # err "The 'dev' option is set to '$dev' but this is not a directory." + # exit 1 + # fi + + OPENSEM_CODE="$dev" +fi + +service:docker-compose:directive-merge "$MASTER_TARGET_SERVICE_NAME" </dev/null) || true -if [ -n "$dev" ]; then - # if ! [ -d "$dev" ]; then - # err "The 'dev' option is set to '$dev' but this is not a directory." - # exit 1 - # fi - - OPENSEM_CODE="$dev" -fi - - service:docker-compose:directive-merge "$MASTER_TARGET_SERVICE_NAME" <