diff --git a/conf/etherpad.service b/conf/etherpad.service index b7d8bd9..301604e 100644 --- a/conf/etherpad.service +++ b/conf/etherpad.service @@ -4,8 +4,8 @@ After=network.target [Service] Type=simple -User=etherpad -Group=etherpad +User=__APP__ +Group=__APP__ ExecStart=__FINALPATH__bin/safeRun.sh /var/log/__APP__/etherpad.log [Install] diff --git a/scripts/install b/scripts/install index 145b52a..bb946cb 100644 --- a/scripts/install +++ b/scripts/install @@ -43,10 +43,6 @@ then # Si le domaine existe dans Yunohost then # Si une app est installée sur ce domaine. echo "An app is already installed on the domain $domain. Mypads needs a whole domain or subdomain to himself." >&2 fi -# else # Si le domaine n'existe pas. -# echo "The $domain domain does not exist, it will be created now.\nYou must probably update your DNS zone by yourself !" >&2 -# sudo yunohost domain add $domain -# Sauf que si le domaine n'existe pas. Le choix est rejeté dés le manifest... fi CHECK_DOMAINPATH # Vérifie la disponibilité du path et du domaine. @@ -192,10 +188,11 @@ sudo yunohost app ssowatconf # Surveille le démarrage du service. lang_OK=0 -for i in `seq 1 60` -do # La boucle attend le démarrage d'etherpad. Ou 1 minute. Cette boucle évite simplement un 502 au début, car le démarrage est long... +for i in `seq 1 120` +do # La boucle attend le démarrage d'etherpad. Ou 2 minutes. Cette boucle évite simplement un 502 au début, car le démarrage est long... if grep -q "You can access your Etherpad instance at" "$tempfile" && [ "$lang_OK" -eq 0 ] ; then # Si le log annonce une première fois le démarrage d'etherpad, applique la langue de mypads et redémarre le service. + echo "Le service $app a démarré correctement." >&2 sudo sed -i "s/__LANGUAGE__/$language/g" "$script_dir/../conf/lang_mypads.sql" mysql -u $db_user -p$db_pwd $db_user < "$script_dir/../conf/lang_mypads.sql" echo "" @@ -205,6 +202,7 @@ do # La boucle attend le démarrage d'etherpad. Ou 1 minute. Cette boucle évite i=1; fi if grep -q "You can access your Etherpad instance at" "$tempfile" && [ "$lang_OK" -eq 1 ]; then + echo "Le service $app a démarré correctement." >&2 break # Si le log annonce une deuxième fois le démarrage d'etherpad, sort de la boucle. fi echo -n "." >&2 diff --git a/scripts/remove b/scripts/remove index 87284bf..ab79729 100755 --- a/scripts/remove +++ b/scripts/remove @@ -11,7 +11,6 @@ source /usr/share/yunohost/helpers domain=$(ynh_app_setting_get $app domain) port=$(ynh_app_setting_get $app port) - # Arrêt du service if [ -e "/etc/systemd/system/$app.service" ]; then echo "Delete systemd script" @@ -37,6 +36,7 @@ REMOVE_LOGROTATE_CONF # Suppression de la configuration de logrotate SECURE_REMOVE '/var/log/$app/' # Suppression des log +REMOVE_SYS_USER # # Supprime l'utilisateur # if grep -q "^etherpad:" /etc/passwd # Test l'existence de l'utilisateur # then diff --git a/scripts/restore b/scripts/restore index 34a9f0e..66c72e2 100644 --- a/scripts/restore +++ b/scripts/restore @@ -81,6 +81,7 @@ sudo service nginx reload for i in `seq 1 60` do # La boucle attend le démarrage d'etherpad. Ou 1 minute. Cette boucle évite simplement un 502 au début, car le démarrage est long... if grep -q "You can access your Etherpad instance at" "$tempfile"; then + echo "Le service $app a démarré correctement." >&2 break # Si le log annonce le démarrage d'etherpad, sort de la boucle. fi echo -n "." >&2 @@ -89,5 +90,3 @@ done echo "" kill -s 15 $PID_TAIL > /dev/null # Arrête l'exécution de tail. sudo rm "$tempfile" - -sudo cat /var/log/$app/etherpad.log >&2 diff --git a/scripts/upgrade b/scripts/upgrade index e91bc24..a182410 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -52,7 +52,7 @@ STORE_MD5_CONFIG "credentials.json" "$final_path/credentials.json" # Réenregist # Configure les droits d'accès au fichiers # Les fichiers appartiennent à etherpad -sudo chown -R etherpad: $final_path +sudo chown -R $app: $final_path sudo chmod 600 "$final_path/credentials.json" # Restreint l'accès à credentials.json @@ -79,9 +79,9 @@ sudo systemctl enable $app.service mod_line=$(grep -nA5 "index.createOpenPad" $final_path/src/templates/index.html | grep "" | cut -d '-' -f 1) # Recherche le /div situé sous le champs d'ouverture de pad. sudo sed -i "$mod_line s@div>@&\n\t