diff options
| author | magikcypress <cyp@rouquin.me> | 2017-04-10 04:55:10 +0200 |
|---|---|---|
| committer | magikcypress <cyp@rouquin.me> | 2017-04-10 04:55:10 +0200 |
| commit | 4dfe2759421883575d4a63d2879d58b93bc56f6a (patch) | |
| tree | 89c16c4295f356fe0c8b7b88f2b8f4f87b62d4db /scripts/upgrade | |
| parent | d04d692b8adee05afaa664067d97727a54f3768c (diff) | |
| download | mastodon_ynh-4dfe2759421883575d4a63d2879d58b93bc56f6a.tar.gz mastodon_ynh-4dfe2759421883575d4a63d2879d58b93bc56f6a.tar.bz2 mastodon_ynh-4dfe2759421883575d4a63d2879d58b93bc56f6a.zip | |
[fix] install + add file remove/restore/upgrade
Diffstat (limited to 'scripts/upgrade')
| -rw-r--r-- | scripts/upgrade | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/scripts/upgrade b/scripts/upgrade new file mode 100644 index 0000000..0260ee1 --- /dev/null +++ b/scripts/upgrade @@ -0,0 +1,54 @@ +#!/bin/bash + +# Exit on command errors and treat unset variables as an error +set -eu + +source .fonctions # Loads the generic functions usually used in the script +source /usr/share/yunohost/helpers # Source YunoHost helpers + +# See comments in install script +app=$YNH_APP_INSTANCE_NAME + +# Retrieve app settings +domain=$(ynh_app_setting_get "$app" domain) +path=$(ynh_app_setting_get "$app" path) +admin=$(ynh_app_setting_get "$app" admin) +is_public=$(ynh_app_setting_get "$app" is_public) + +CHECK_PATH # Checks and corrects the syntax of the path. + +# Check if admin is not null +if [[ "$admin" = "" || "$is_public" = "" || "$language" = "" ]]; then + echo "Unable to upgrade, please contact support" + ynh_die +fi + +final_path=/opt/$app + +db_name=$app + +# Modify Nginx configuration file and copy it to Nginx conf directory +sudo sed -i "s@__PATH__@$app@g" ../conf/nginx.conf* +sudo sed -i "s@__FINALPATH__@$final_path/@g" ../conf/nginx.conf* + +# Update Mastodon +sudo su - $app <<COMMANDS +pushd ~/live +git pull +RAILS_ENV=production bin/bundle exec rails db:migrate +RAILS_ENV=production bin/bundle exec rails assets:precompile +COMMANDS + +# If app is public, add url to SSOWat conf as skipped_uris +if [ $is_public = "Yes" ]; +then + ynh_app_setting_set "$app" unprotected_uris "/" + sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/$app.conf +else + sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/$app.conf +fi + +# Reload Nginx +sudo systemctl reload nginx +# Reload Mastodon +sudo systemctl restart mastodon-*.service
\ No newline at end of file |
