From f56fb8fd7cdcb694026baa06aeb427e44d9a493b Mon Sep 17 00:00:00 2001 From: frju365 Date: Sat, 28 Jan 2017 23:41:18 +0100 Subject: [PATCH] Create upgrade --- scripts/upgrade | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 scripts/upgrade diff --git a/scripts/upgrade b/scripts/upgrade new file mode 100644 index 0000000..7bb4e81 --- /dev/null +++ b/scripts/upgrade @@ -0,0 +1,54 @@ +#!/bin/bash + +source /usr/share/yunohost/helpers +source ./_common + +app=$YNH_APP_INSTANCE_NAME + +domain=$(sudo yunohost app setting $app domain) +path=$(sudo yunohost app setting $app path) +is_public=$(sudo yunohost app setting $app is_public) + + +# Remove trailing "/" for next commands +if [[ ! "$path" == "/" ]]; then + path=${path%/} +fi + +# Init final_path, if ever it got deleted somehow +final_path=/var/www/$app +sudo mkdir -p $final_path + +# Clean up +# This will remove old paste data (otherwise we would need to lower down security) +sudo rm -rf $final_path/* + +# Copy files to the right place +extract_source $final_path + +# Files owned by root, www-data can just read +sudo find $final_path -type f | xargs sudo chmod 644 +sudo find $final_path -type d | xargs sudo chmod 755 +sudo chown -R root: $final_path + +# except for data and tmp subdir, where www-data must have write permissions +sudo mkdir -p $final_path/{data,tmp} +sudo chown -R www-data:root $final_path/{data,tmp} +sudo chmod 700 $final_path/{data,tmp} + +# Modify Nginx configuration file and copy it to Nginx conf directory +sed -i "s@YNH_WWW_PATH@$path@g" ../conf/nginx.conf +sed -i "s@YNH_WWW_ALIAS@$final_path/@g" ../conf/nginx.conf +nginxconf=/etc/nginx/conf.d/$domain.d/$app.conf +sudo cp ../conf/nginx.conf $nginxconf +sudo chown root: $nginxconf +sudo chmod 600 $nginxconf + +if [ "$is_public" = "Yes" ]; +then + sudo yunohost app setting $app skipped_uris -d + sudo yunohost app setting $app unprotected_uris -v "/" +fi + +sudo service nginx reload +sudo yunohost app ssowatconf