#!/bin/bash # Exit on command errors and treat unset variables as an error set -eu # Loads the generic functions usually used in the script source .fonctions # Source YunoHost helpers source /usr/share/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) language=$(ynh_app_setting_get "$app" language) CHECK_PATH # Checks and corrects the syntax of the path. # Check if admin is not null if [[ "$admin" = "" || "$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* sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/$app.conf # Stop Mastodon Services sudo systemctl stop mastodon-*.service # Change owner of live folder sudo chown -R $app: $final_path/live # Download Mastodon sudo su - $app < 1.4.2 migration prepare_for_foreign_keys is needed RAILS_ENV=production bundle exec rails mastodon:maintenance:prepare_for_foreign_keys RAILS_ENV=production bundle exec rails assets:clean RAILS_ENV=production bundle exec rails assets:precompile RAILS_ENV=production bundle exec rails db:migrate COMMANDS # Restart Mastodon sudo systemctl start mastodon-*.service # Waiting start all services sleep 30 # Reload Nginx sudo systemctl reload nginx # Set app public ynh_app_setting_set "$app" unprotected_uris "/" # Reload SSOwat configuration sudo yunohost app ssowatconf