From 7cfb08f7bfd685e36b3770e63742ac5e08c7d59f Mon Sep 17 00:00:00 2001 From: yalh76 Date: Sun, 6 Feb 2022 01:57:11 +0100 Subject: [PATCH] Implement prosody_ynh --- scripts/install | 6 +++++- scripts/remove | 25 +++++++++++++++++++++++++ scripts/restore | 6 +++++- scripts/upgrade | 6 +++--- 4 files changed, 38 insertions(+), 5 deletions(-) diff --git a/scripts/install b/scripts/install index 386a037..085bd58 100644 --- a/scripts/install +++ b/scripts/install @@ -99,9 +99,13 @@ ynh_install_app_dependencies $pkg_dependencies if ! yunohost app list | grep -q "prosody" then - yunohost app install prosody --args "domain=$domain&admin=$admin&language=$language&password=$password" + yunohost app install prosody --force +else + yunohost app upgrade prosody --force fi +ynh_app_setting_set --app=$app --key=require_prosody --value="1" + #================================================= # CREATE DEDICATED USER #================================================= diff --git a/scripts/remove b/scripts/remove index 88fd557..08c441a 100644 --- a/scripts/remove +++ b/scripts/remove @@ -111,6 +111,31 @@ ynh_script_progression --message="Removing dependencies..." # Remove metapackage and its dependencies ynh_remove_app_dependencies +# Remove the line for this app +ynh_app_setting_delete --app=$app --key=require_prosody + +# List apps requiring Prosody +installed_apps=$(yunohost app list | grep -oP 'id: \K.*$') +required_by="" +installed_app_required_by="" +for installed_app in $installed_apps +do + installed_app_required_by=$(ynh_app_setting_get --app=$installed_app --key="require_prosody") + if [[ $installed_app_required_by ]] + then + required_by="${installed_app_required_by}" + fi + installed_app_required_by="" +done + +# If Prosody is no more required +if [[ ! $required_by ]] +then + # Remove Prosody + ynh_print_info --message="Removing of Prosody" + yunohost app remove prosody --purge +fi + #================================================= # CLOSE A PORT #================================================= diff --git a/scripts/restore b/scripts/restore index c976aad..4d9d974 100644 --- a/scripts/restore +++ b/scripts/restore @@ -88,9 +88,13 @@ ynh_install_app_dependencies $pkg_dependencies if ! yunohost app list | grep -q "prosody" then - yunohost app install prosody --args "domain=$domain&admin=$admin&language=$language&password=$password" + yunohost app install prosody --force +else + yunohost app upgrade prosody --force fi +ynh_app_setting_set --app=$app --key=require_prosody --value="1" + #================================================= # CONFIGURE FIREWALL #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index d9d6086..15b9b2b 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -129,9 +129,9 @@ ynh_install_app_dependencies $pkg_dependencies if ! yunohost app list | grep -q "prosody" then - yunohost app install prosody --args "domain=$domain&admin=$admin&language=$language&password=$password" -elfi - yunohost app upgrade + yunohost app install prosody --force +else + yunohost app upgrade prosody --force fi #=================================================