diff --git a/scripts/_common.sh b/scripts/_common.sh index 9747461..22c41ea 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -72,6 +72,16 @@ myynh_add_fpm_config () { sudo systemctl reload php5-fpm } +myynh_set_permissions () { + [ -z $(sudo find "$final_path" -type f) ] && sudo find "$final_path" -type f | xargs sudo chmod 0644 + [ -z $(sudo find "$final_path" -type d) ] && sudo find "$final_path" -type d | xargs sudo chmod 0755 + [ -z $(sudo find "$data_path" -type f) ] && sudo find "$data_path" -type f | xargs sudo chmod 0644 + [ -z $(sudo find "$data_path" -type d) ] && sudo find "$data_path" -type d | xargs sudo chmod 0755 + sudo chown -R root:"$app" "$final_path" + sudo chown -R "$app": "$final_path/private" + sudo chown -R "$app": "$data_path/*" +} + # Remove the dedicated php-fpm config myynh_remove_fpm_config () { ynh_secure_remove "$phpfpm_conf" diff --git a/scripts/install b/scripts/install index 943ae70..adbeb9b 100644 --- a/scripts/install +++ b/scripts/install @@ -74,13 +74,7 @@ sudo ln -s "$data_path/uploads" "$final_path/uploads" sudo ln -s "$data_path/thumbs" "$final_path/thumbs" # set permissions -sudo find "$final_path" -type f | xargs sudo chmod 0644 -sudo find "$final_path" -type d | xargs sudo chmod 0755 -sudo find "$data_path" -type d | xargs sudo chmod 0755 -sudo chown -R root:"$app" "$final_path" -sudo chown -R "$app": "$final_path/private" -sudo chown -R "$app": "$data_path/uploads" -sudo chown -R "$app": "$data_path/thumbs" +myynh_set_permissions # configure nginx settings myynh_add_nginx_config diff --git a/scripts/restore b/scripts/restore index 50615ea..2055b36 100644 --- a/scripts/restore +++ b/scripts/restore @@ -29,7 +29,6 @@ phpfpm_conf="/etc/php5/fpm/pool.d/$app.conf" # check domain/path availability ynh_webpath_available "$domain" "$path_url" -#ynh_webpath_register "$app" "$domain" "$path_url" myynh_check_path "$final_path" # add required packages @@ -42,26 +41,24 @@ ynh_system_user_create "$app" ynh_restore_file "$nginx_conf" ynh_restore_file "$phpfpm_conf" -# restore source & their permissions +# restore source ynh_restore_file "$final_path" -sudo chown -R "$app": "$final_path" -sudo chmod 755 "$final_path" -# restore data & their permissions only if there is no data +# restore data only if there is no data if [ ! -d "$data_path" ]; then if [ $backup_core_only -eq 0 ]; then ynh_restore_file "$data_path" - sudo chown -R "$app": "$data_path" else myynh_create_dir "$data_path/uploads" - sudo chown -R "$app": "$data_path/uploads" myynh_create_dir "$data_path/thumbs" - sudo chown -R "$app": "$data_path/thumbs" fi else echo "$data_path already exists and will not be overwritten" >&2 fi +# set permissions +myynh_set_permissions + # restart services sudo systemctl reload php5-fpm sudo systemctl reload nginx diff --git a/scripts/upgrade b/scripts/upgrade index 871179c..916176d 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -74,14 +74,7 @@ sudo cp -a "$TMPDIR/." "$final_path" sudo rm -R "$TMPDIR" # set permissions -sudo find "$final_path" -type f | xargs sudo chmod 0644 -sudo find "$final_path" -type d | xargs sudo chmod 0755 -sudo find "$data_path" -type f | xargs sudo chmod 0644 -sudo find "$data_path" -type d | xargs sudo chmod 0755 -sudo chown -R root:"$app" "$final_path" -sudo chown -R "$app": "$final_path/private" -sudo chown -R "$app": "$data_path/uploads" -sudo chown -R "$app": "$data_path/thumbs" +myynh_set_permissions # configure nginx settings myynh_add_nginx_config