1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/element_ynh.git synced 2024-09-03 18:36:08 +02:00

Apply example_ynh

This commit is contained in:
ericgaspar 2021-09-13 23:49:07 +02:00
parent 34d457d13e
commit 23c19d79e9
No known key found for this signature in database
GPG key ID: 574F281483054D44
17 changed files with 403 additions and 201 deletions

View file

@ -2,9 +2,3 @@
"name": "Element_ynh"
, "files": [ { "git": 1 } ]
}

View file

@ -1,11 +1,9 @@
;; General
auto_remove=1
# Commentaire ignoré
;; Test complet
; Manifest
domain="domain.tld" (DOMAIN)
path="/path" (PATH)
domain="domain.tld"
path="/path"
default_home_server="matrix.org"
is_public=1 (PUBLIC|public=1|private=0)
is_public=1
; Checks
pkg_linter=1
setup_sub_dir=1
@ -14,14 +12,15 @@
setup_private=1
setup_public=1
upgrade=1
upgrade=1 from_commit=CommitHash
backup_restore=1
multi_instance=1
wrong_user=0
wrong_path=1
incorrect_path=1
corrupt_source=1
fail_download_source=1
port_already_use=0 (XXXX)
final_path_already_use=1
port_already_use=0
change_url=1
;;; Upgrade options
;;; Upgrade options
; commit=CommitHash
name=Name and date of the commit.
manifest_arg=domain=DOMAIN&path=PATH&admin=USER&language=fr&is_public=1&password=pass&port=666&

View file

@ -1,11 +1,5 @@
SOURCE_URL=https://github.com/vector-im/element-web/releases/download/v1.8.4/element-v1.8.4.tar.gz
SOURCE_SUM=5787a44ace859920a95059408a94f2add7b8cfe12b4026fdcf392d6d7f18b42f
# (Optional) Program to check the integrity (sha256sum, md5sum...)
# default: sha256
SOURCE_SUM_PRG=sha256sum
# (Optional) Archive format
# default: tar.gz
SOURCE_FORMAT=tar.gz
# (Optional) Put false if sources are directly in the archive root
# default: true
SOURCE_IN_SUBDIR=true

View file

@ -1,5 +1,5 @@
{
"default_hs_url": "https://__DEFAULT_SERVER__",
"default_hs_url": "https://__DEFAULT_HOME_SERVER__",
"default_is_url": "https://vector.im",
"brand": "Element",
"integrations_ui_url": "https://scalar.vector.im/",

View file

@ -1,10 +1,12 @@
#sub_path_only rewrite ^__PATH__$ __PATH__/ permanent;
location __PATH__/ {
alias __FINALPATH__/;
if ($scheme = http) {
rewrite ^ https://$server_name$request_uri? permanent;
}
index index.html;
# Include SSOWAT user panel.

1
doc/DESCRIPTION.md Normal file
View file

@ -0,0 +1 @@
Element is a new type of messaging app. You choose where your messages are stored, putting you in control of your data. It gives you access to the Matrix open network, so you can talk to anyone. Element provides a new level of security, adding cross-signed device verification to default end-to-end encryption.

30
doc/DISCLAIMER.md Normal file
View file

@ -0,0 +1,30 @@
## YunoHost specific features
### Multi-users support
Now this application support the SSO. If you want to use the sso you need to define the path to the default homeserver as your homeserver witch is installed on your YunoHost instance.
## Additional informations
### Important Security Note
We do not recommend running Element from the same domain name as your Matrix
homeserver (synapse). The reason is the risk of XSS (cross-site-scripting)
vulnerabilities that could occur if someone caused Element to load and render
malicious user generated content from a Matrix API which then had trusted
access to Element (or other apps) due to sharing the same domain.
We have put some coarse mitigations into place to try to protect against this
situation, but it's still not good practice to do it in the first place. See
https://github.com/vector-im/riot-web/issues/1977 for more details.
### Migration from old app name "Riot"
As this app don't contains any data on the server side no migration was made to migrate from "Riot" to "Element".
So you just will need to remove Riot and install Element on the same domain (you can change the path) to be able to keep the data on your web browser.
So the process to migrate to element is the following:
1. Get the domain of "Riot": `yunohost app setting riot domain`
2. Remove Riot: `yunohost app remove riot`
3. Install Element: `yunohost app install element`

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

View file

@ -6,16 +6,26 @@
"yunohost": ">= 4.2.6.1"
},
"description": {
"en": "A web client for matrix",
"fr": "Un client web pour matrix"
"en": "Web client for matrix",
"fr": "Client web pour matrix"
},
"version": "1.8.4~ynh1",
"url": "https://element.io",
"upstream": {
"license": "Apache-2.0",
"website": "https://element.io",
"demo": "https://app.element.io/",
"admindoc": "https://element.io/help",
"code": "https://github.com/vector-im/element-web/"
},
"license": "Apache-2.0",
"maintainer": {
"name": "Josué Tille",
"email": "josue@tille.ch"
},
"requirements": {
"yunohost": ">= 4.2.6.1"
},
"multi_instance": true,
"services": [
"nginx"
@ -25,19 +35,11 @@
{
"name": "domain",
"type": "domain",
"ask": {
"en": "Choose a domain for Element",
"fr": "Choisissez un domaine pour Element"
},
"example": "domain.org"
},
{
"name": "path",
"type": "path",
"ask": {
"en": "Choose a path for Element",
"fr": "Choisissez un chemin pour Element"
},
"example": "/element",
"default": "/element"
},
@ -54,10 +56,6 @@
{
"name": "is_public",
"type": "boolean",
"ask": {
"en": "Is it a public application?",
"fr": "Est-ce une application publique ?"
},
"help": {
"en": "A public application means that anyone can access it. Note that this application provides just files (html, javascript, images, etc.)",
"fr": "Une application publique signifie que n'importe qui peut y accéder. Notez que cette application ne fournit que des fichiers (html, javascript, images, etc.)"

View file

@ -1,26 +1,17 @@
#!/bin/bash
#=================================================
# SET ALL CONSTANTS
# COMMON VARIABLES
#=================================================
app=$YNH_APP_INSTANCE_NAME
final_path="/var/www/$app"
#=================================================
# DEFINE ALL COMMON FONCTIONS
# PERSONAL HELPERS
#=================================================
config_element() {
cp ../conf/config.json $final_path/config.json
ynh_replace_string --match_string __DEFAULT_SERVER__ --replace_string $default_home_server --target_file $final_path/config.json
}
#=================================================
# EXPERIMENTAL HELPERS
#=================================================
install_source() {
ynh_setup_source --dest_dir $final_path/
}
set_permission() {
chown www-data:root -R $final_path
chmod u=rX,g=rX,o= -R $final_path
}
#=================================================
# FUTURE OFFICIAL HELPERS
#=================================================

View file

@ -3,32 +3,48 @@
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Import common cmd
source ../settings/scripts/experimental_helper.sh
# Keep this path for calling _common.sh inside the execution's context of backup and restore scripts
source ../settings/scripts/_common.sh
# Source YunoHost helpers
source /usr/share/yunohost/helpers
# Stop script if errors
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
#=================================================
# STANDARD BACKUP STEPS
# LOAD SETTINGS
#=================================================
ynh_print_info --message="Loading installation settings..."
app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
#=================================================
# DECLARE DATA AND CONF FILES TO BACKUP
#=================================================
ynh_print_info --message="Declaring files to be backed up..."
#=================================================
# BACKUP THE APP MAIN DIR
#=================================================
# Retrieve arguments
ynh_print_info --message="Loading installation settings..."
domain=$(ynh_app_setting_get --app $app --key domain)
ynh_backup --src_path="$final_path"
ynh_print_info --message="Backing configuration..."
#=================================================
# BACKUP THE NGINX CONFIGURATION
#=================================================
# Copy Nginx config
ynh_backup --src_path "/etc/nginx/conf.d/${domain}.d/${app}.conf"
ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf"
# Backup element files
ynh_print_info --message="Backing up the main app directory..."
ynh_backup --src_path "/var/www/$app"
#=================================================
# END OF SCRIPT
#=================================================
ynh_print_info --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)."

View file

@ -1,42 +1,104 @@
#!/bin/bash
#=================================================
# GENERIC START
# GENERIC STARTING
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Import common cmd
source ./experimental_helper.sh
source ./_common.sh
# Source YunoHost helpers
source _common.sh
source /usr/share/yunohost/helpers
# Stop script if errors
#=================================================
# RETRIEVE ARGUMENTS
#=================================================
old_domain=$YNH_APP_OLD_DOMAIN
old_path=$YNH_APP_OLD_PATH
new_domain=$YNH_APP_NEW_DOMAIN
new_path=$YNH_APP_NEW_PATH
app=$YNH_APP_INSTANCE_NAME
#=================================================
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Loading installation settings..." --weight=1
# Needed for helper "ynh_add_nginx_config"
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
#=================================================
# BACKUP BEFORE CHANGE URL THEN ACTIVE TRAP
#=================================================
ynh_script_progression --message="Backing up the app before changing its URL (may take a while)..." --weight=1
# Backup the current version of the app
ynh_backup_before_upgrade
ynh_clean_setup () {
# Remove the new domain config file, the remove script won't do it as it doesn't know yet its location.
ynh_secure_remove --file="/etc/nginx/conf.d/$new_domain.d/$app.conf"
# Restore it if the upgrade fails
ynh_restore_upgradebackup
}
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
# Retrive arguments
ynh_script_progression --message="Loading installation settings..."
old_domain=$YNH_APP_OLD_DOMAIN
path_url=$(ynh_normalize_url_path --path_url ${YNH_APP_NEW_PATH:-'/'})
domain=$YNH_APP_NEW_DOMAIN
#=================================================
# STANDARD MODIFICATIONS
# CHECK WHICH PARTS SHOULD BE CHANGED
#=================================================
ynh_script_progression --message="Updating configuration..."
# Update nginx config
if [ "$old_domain" != "$domain" ]
change_domain=0
if [ "$old_domain" != "$new_domain" ]
then
# Delete file checksum for the old conf file location
ynh_delete_file_checksum --file "/etc/nginx/conf.d/$old_domain.d/$app.conf"
mv "/etc/nginx/conf.d/$old_domain.d/$app.conf" "/etc/nginx/conf.d/$domain.d/$app.conf"
# Store file checksum for the new config file location
ynh_store_file_checksum --file "/etc/nginx/conf.d/$domain.d/$app.conf"
change_domain=1
fi
ynh_add_nginx_config
change_path=0
if [ "$old_path" != "$new_path" ]
then
change_path=1
fi
#=================================================
# MODIFY URL IN NGINX CONF
#=================================================
ynh_script_progression --message="Updating NGINX web server configuration..." --weight=1
nginx_conf_path=/etc/nginx/conf.d/$old_domain.d/$app.conf
# Change the path in the NGINX config file
if [ $change_path -eq 1 ]
then
# Make a backup of the original NGINX config file if modified
ynh_backup_if_checksum_is_different --file="$nginx_conf_path"
# Set global variables for NGINX helper
domain="$old_domain"
path_url="$new_path"
# Create a dedicated NGINX config
ynh_add_nginx_config
fi
# Change the domain for NGINX
if [ $change_domain -eq 1 ]
then
# Delete file checksum for the old conf file location
ynh_delete_file_checksum --file="$nginx_conf_path"
mv $nginx_conf_path /etc/nginx/conf.d/$new_domain.d/$app.conf
# Store file checksum for the new config file location
ynh_store_file_checksum --file="/etc/nginx/conf.d/$new_domain.d/$app.conf"
fi
#=================================================
# RELOAD NGINX
#=================================================
ynh_script_progression --message="Reloading NGINX web server..." --weight=1
ynh_systemd_action --service_name=nginx --action=reload
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Change of URL completed for $app" --last

View file

@ -3,18 +3,22 @@
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Import common cmd
source ./experimental_helper.sh
source ./_common.sh
# Source YunoHost helpers
source _common.sh
source /usr/share/yunohost/helpers
# Stop script if errors
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
ynh_script_progression --message="Validating installation parameters..."
#=================================================
# RETRIEVE ARGUMENTS FROM THE MANIFEST
#=================================================
# Retrieve arguments
domain=$YNH_APP_ARG_DOMAIN
@ -22,47 +26,84 @@ path_url=$YNH_APP_ARG_PATH
is_public=$YNH_APP_ARG_IS_PUBLIC
default_home_server=$YNH_APP_ARG_DEFAULT_HOME_SERVER
app=$YNH_APP_INSTANCE_NAME
#=================================================
# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS
#=================================================
ynh_script_progression --message="Validating installation parameters..." --weight=1
final_path=/var/www/$app
test ! -e "$final_path" || ynh_die --message="This path already contains a folder"
# Register (book) web path
ynh_webpath_register --app $app --domain $domain --path_url $path_url
ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url
# Check Final Path availability
test ! -e "$final_path" || ynh_die --message "This path already contains a folder"
#=================================================
# STORE SETTINGS FROM MANIFEST
#=================================================
ynh_script_progression --message="Storing installation settings..." --weight=1
# Enregistre les infos dans la config YunoHost
ynh_script_progression --message="Storing installation settings..."
ynh_app_setting_set --app $app --key is_public --value $is_public
ynh_app_setting_set --app $app --key default_home_server --value $default_home_server
ynh_app_setting_set --app $app --key final_path --value $final_path
#=================================================
# STANDARD MODIFICATIONS
# CREATE DEDICATED USER
#=================================================
ynh_script_progression --message="Configuring system user..." --weight=1
# Get source and install in source dir
ynh_script_progression --message="Installing sources files..." --weight=10
install_source
# Create a system user
ynh_system_user_create --username=$app --home_dir="$final_path"
# Update Element config
config_element
#=================================================
# DOWNLOAD, CHECK AND UNPACK SOURCE
#=================================================
ynh_script_progression --message="Setting up source files..." --weight=4
# Config nginx
ynh_app_setting_set --app=$app --key=final_path --value=$final_path
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$final_path"
chmod 750 "$final_path"
chmod -R o-rwx "$final_path"
chown -R $app:www-data "$final_path"
#=================================================
# NGINX CONFIGURATION
#=================================================
ynh_script_progression --message="Configuring NGINX web server..." --weight=1
# Create a dedicated NGINX config
ynh_add_nginx_config
#=================================================
# GENERIC FINALIZATION
# ADD A CONFIGURATION
#=================================================
ynh_script_progression --message="Adding a configuration file..." --weight=1
# Set final permission
ynh_script_progression --message="Protecting directory"
set_permission
ynh_add_config --template="../conf/config.json" --destination="$final_path/config.json"
ynh_script_progression --message="Configuring permissions"
if [ "$is_public" == '1' ];
#=================================================
# SETUP SSOWAT
#=================================================
ynh_script_progression --message="Configuring permissions..." --weight=1
# Make app public if necessary
if [ $is_public -eq 1 ]
then
ynh_permission_update --permission "main" --add "visitors"
ynh_permission_update --permission="main" --add="visitors"
fi
# Recharge la configuration Nginx
systemctl reload nginx.service
#=================================================
# RELOAD NGINX
#=================================================
ynh_script_progression --message="Reloading NGINX web server..." --weight=1
ynh_systemd_action --service_name=nginx --action=reload
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Installation of $app completed" --last

View file

@ -3,28 +3,36 @@
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Import common cmd
source ./experimental_helper.sh
source ./_common.sh
# Source YunoHost helpers
source _common.sh
source /usr/share/yunohost/helpers
#=================================================
# STANDARD REMOVE
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Loading installation settings..." --weight=1
app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
#=================================================
# REMOVE APP MAIN DIR
#=================================================
ynh_script_progression --message="Removing app main directory..." --weight=1
# Remove the app directory securely
ynh_secure_remove --file="$final_path"
#=================================================
# REMOVE NGINX CONFIGURATION
#=================================================
ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1
#=================================================
# END OF SCRIPT
#=================================================
# Retrieve arguments
ynh_script_progression --message="Loading installation settings..."
domain=$(ynh_app_setting_get --app $app --key domain)
# Remove all files
ynh_script_progression --message="Removing app main directory..." --weight=4
ynh_secure_remove --file="/var/www/$app"
# Suppression de la configuration nginx
ynh_script_progression --message="Removing configuration..."
ynh_remove_nginx_config
ynh_script_progression --message="Removal of $app completed" --last

View file

@ -3,47 +3,79 @@
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Import common cmd
source ../settings/scripts/experimental_helper.sh
# Keep this path for calling _common.sh inside the execution's context of backup and restore scripts
source ../settings/scripts/_common.sh
# Source YunoHost helpers
source /usr/share/yunohost/helpers
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
# Stop script if errors
ynh_abort_if_errors
# Retrieve arguments
ynh_script_progression --message="Loading settings..."
domain=$(ynh_app_setting_get --app $app --key domain)
path_url=$(ynh_app_setting_get --app $app --key path)
#=================================================
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Loading installation settings..." --weight=1
# Check domain/path availability
ynh_webpath_available --domain $domain --path_url $path_url || ynh_die --message "$domain/$path_url is not available, please use an other domain or path."
app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
path_url=$(ynh_app_setting_get --app=$app --key=path)
#=================================================
# CHECK IF THE APP CAN BE RESTORED
#=================================================
ynh_script_progression --message="Validating restoration parameters..." --weight=1
test ! -d $final_path \
|| ynh_die --message="There is already a directory: $final_path "
#=================================================
# STANDARD RESTORATION STEPS
#=================================================
# RESTORE THE NGINX CONFIGURATION
#=================================================
ynh_script_progression --message="Restoring the NGINX configuration..." --weight=1
# Create a system user
ynh_script_progression --message="Recreating the dedicated system user..."
ynh_system_user_create --username $app
ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf"
# Restore all config and data
ynh_script_progression --message="Restoring files..." --weight=10
ynh_restore
#=================================================
# RECREATE THE DEDICATED USER
#=================================================
ynh_script_progression --message="Recreating the dedicated system user..." --weight=1
# Create the dedicated user (if not existing)
ynh_system_user_create --username=$app --home_dir="$final_path"
#=================================================
# RESTORE THE APP MAIN DIR
#=================================================
ynh_script_progression --message="Restoring the app main directory..." --weight=1
ynh_restore_file --origin_path="$final_path"
chmod 750 "$final_path"
chmod -R o-rwx "$final_path"
chown -R $app:www-data "$final_path"
#=================================================
# GENERIC FINALIZATION
#=================================================
# RELOAD NGINX AND PHP-FPM
#=================================================
ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --weight=1
# Set final permission
ynh_script_progression --message="Protecting directory..."
set_permission
ynh_systemd_action --service_name=php$phpversion-fpm --action=reload
ynh_systemd_action --service_name=nginx --action=reload
# Reload nginx
ynh_script_progression --message="Reloading services..."
systemctl reload nginx.service
#=================================================
# END OF SCRIPT
#=================================================
ynh_script_progression --message="Restoration completed for $app" --last

View file

@ -3,58 +3,92 @@
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
# Import common cmd
source ./experimental_helper.sh
source ./_common.sh
# Source YunoHost helpers
source _common.sh
source /usr/share/yunohost/helpers
# Stop script if errors
#=================================================
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Loading installation settings..." --weight=1
app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
path_url=$(ynh_app_setting_get --app=$app --key=path)
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
default_home_server=$(ynh_app_setting_get --app=$app --key=default_home_server)
#=================================================
# CHECK VERSION
#=================================================
upgrade_type=$(ynh_check_app_version_changed)
#=================================================
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
#=================================================
ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." --weight=1
# Backup the current version of the app
ynh_backup_before_upgrade
ynh_clean_setup () {
# Restore it if the upgrade fails
ynh_restore_upgradebackup
}
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
# Retrieve arguments
ynh_script_progression --message="Loading installation settings..."
domain=$(ynh_app_setting_get --app $app --key domain)
path_url=$(ynh_normalize_url_path --path_url $(ynh_app_setting_get --app $app --key path))
is_public=$(ynh_app_setting_get --app $app --key is_public)
final_path=$(ynh_app_setting_get --app $app --key final_path)
default_home_server=$(ynh_app_setting_get --app $app --key default_home_server)
#=================================================
# CREATE DEDICATED USER
#=================================================
ynh_script_progression --message="Making sure dedicated system user exists..." --weight=1
# Create a dedicated user (if not existing)
ynh_system_user_create --username=$app --home_dir="$final_path"
#=================================================
# STANDARD UPGRADE STEPS
# DOWNLOAD, CHECK AND UNPACK SOURCE
#=================================================
# Get source and install in source dir
ynh_script_progression --message="Upgrading source files..." --weight=6
ynh_secure_remove --file=$final_path
install_source
if [ "$upgrade_type" == "UPGRADE_APP" ]
then
ynh_script_progression --message="Upgrading source files..." --weight=1
ynh_script_progression --message="Configuring application..."
# Download, check integrity, uncompress and patch the source from app.src
ynh_setup_source --dest_dir="$final_path"
fi
# Update Element config
config_element
chmod 750 "$final_path"
chmod -R o-rwx "$final_path"
chown -R $app:www-data "$final_path"
# Remove the dedicated php-fpm config
ynh_remove_fpm_config
#=================================================
# ADD A CONFIGURATION
#=================================================
ynh_script_progression --message="Adding a configuration file..." --weight=1
# Delete a system user
ynh_script_progression --message="Removing apps user..."
ynh_system_user_delete --username $app
ynh_add_config --template="../conf/config.json" --destination="$final_path/config.json"
# Update nginx config
#=================================================
# NGINX CONFIGURATION
#=================================================
ynh_script_progression --message="Upgrading NGINX web server configuration..." --weight=1
# Create a dedicated NGINX config
ynh_add_nginx_config
#=================================================
# GENERIC FINALIZATION
# RELOAD NGINX
#=================================================
ynh_script_progression --message="Reloading NGINX web server..." --weight=1
ynh_systemd_action --service_name=nginx --action=reload
#=================================================
# END OF SCRIPT
#=================================================
# Set final permission
ynh_script_progression --message="Protecting directory..."
set_permission
# Recharge la configuration Nginx
systemctl reload nginx.service
ynh_script_progression --message="Upgrade of $app completed" --last