From 3306f914afd05a403549912f768a1b297429c44d Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Mon, 5 Jun 2017 16:30:42 +0200 Subject: [PATCH] Fix let's encrypt & patch persistants --- demo_lxc_build_init.sh | 4 ---- demo_lxc_destroy.sh | 2 +- demo_restore_crash.sh | 2 +- demo_upgrade.sh | 20 ++++++++++++++++++- upgrade.d/Constant_upgrade/Default_login | 20 +++++++++++++++++++ upgrade.d/Constant_upgrade/Disable_add_domain | 15 ++++++++++++++ .../Constant_upgrade/Disable_custom_apps | 15 ++++++++++++++ 7 files changed, 71 insertions(+), 7 deletions(-) create mode 100644 upgrade.d/Constant_upgrade/Default_login create mode 100644 upgrade.d/Constant_upgrade/Disable_add_domain create mode 100644 upgrade.d/Constant_upgrade/Disable_custom_apps diff --git a/demo_lxc_build_init.sh b/demo_lxc_build_init.sh index a3c3985..c9c8b4f 100755 --- a/demo_lxc_build_init.sh +++ b/demo_lxc_build_init.sh @@ -82,10 +82,6 @@ server { root /tmp/letsencrypt-auto; } -# if (\$scheme = http) { -# rewrite ^ https://\$server_name\$request_uri? permanent; -# } - access_log /var/log/nginx/$DOMAIN-access.log; error_log /var/log/nginx/$DOMAIN-error.log; } diff --git a/demo_lxc_destroy.sh b/demo_lxc_destroy.sh index 642afa0..3f82893 100755 --- a/demo_lxc_destroy.sh +++ b/demo_lxc_destroy.sh @@ -37,5 +37,5 @@ ssh-keygen -f "$HOME/.ssh/known_hosts" -R $IP_LXC1 ssh-keygen -f "$HOME/.ssh/known_hosts" -R $IP_LXC2 echo -e "\e[1m> Suppression du service\e[0m" -sudo systemctl disable lutim.service +sudo systemctl disable lxc_demo.service sudo rm -f /etc/systemd/system/lxc_demo.service diff --git a/demo_restore_crash.sh b/demo_restore_crash.sh index b769cb3..b4f50ac 100755 --- a/demo_restore_crash.sh +++ b/demo_restore_crash.sh @@ -79,7 +79,7 @@ CLONE_CONTAINER () { echo "Modification de l'ip du clone," sudo sed -i "s@address $IP_SOURCE@address $IP_CIBLE@" /var/lib/lxc/$MACHINE_CIBLE/rootfs/etc/network/interfaces echo "du nom du veth" - sudo sed -i "s@^lxc.network.veth.pair = MACHINE_SOURCE@lxc.network.veth.pair = $MACHINE_CIBLE@" /var/lib/lxc/$MACHINE_CIBLE/config + sudo sed -i "s@$MACHINE_SOURCE@$MACHINE_CIBLE@g" /var/lib/lxc/$MACHINE_CIBLE/config echo "Et enfin renseigne /etc/hosts sur le clone" sudo sed -i "s@^127.0.0.1 $MACHINE_SOURCE@127.0.0.1 $MACHINE_CIBLE@" /var/lib/lxc/$MACHINE_CIBLE/rootfs/etc/hosts diff --git a/demo_upgrade.sh b/demo_upgrade.sh index 6bb946c..86031f8 100755 --- a/demo_upgrade.sh +++ b/demo_upgrade.sh @@ -64,7 +64,7 @@ UPGRADE_DEMO_CONTAINER () { # Démarrage, upgrade et snapshot LOOP=$((LOOP + 1)) while read LIGNE do - if [ ! "$LIGNE" == "exemple" ] && [ ! "$LIGNE" == "old_scripts" ] && ! echo "$LIGNE" | grep -q ".fail$" # Le fichier exemple, le dossier old_scripts et les scripts fail sont ignorés + if [ ! "$LIGNE" == "exemple" ] && [ ! "$LIGNE" == "old_scripts" ] && [ ! "$LIGNE" == "Constant_upgrade" ] && ! echo "$LIGNE" | grep -q ".fail$" # Le fichier exemple, le dossier old_scripts et les scripts fail sont ignorés then date # Exécute chaque script trouvé dans upgrade.d @@ -82,6 +82,24 @@ UPGRADE_DEMO_CONTAINER () { # Démarrage, upgrade et snapshot fi done <<< "$(ls -1 "$script_dir/upgrade.d")" + # Exécution des scripts de upgrade.d/Constant_upgrade + while read LIGNE + do + if [ "$update_apt" -eq "1" ] + then + date + # Exécute chaque script trouvé dans upgrade.d/Constant_upgrade + echo "Exécution du script $LIGNE sur le conteneur $MACHINE" + /bin/bash "$script_dir/upgrade.d/Constant_upgrade/$LIGNE" $MACHINE + if [ "$?" -ne 0 ]; then + echo "Échec du script $LIGNE" + echo -e "Échec d'exécution du script d'upgrade $LIGNE sur le conteneur $MACHINE sur le serveur de demo $DOMAIN!\n" + else + echo "Le script $LIGNE a été exécuté sans erreur" + fi + fi + done <<< "$(ls -1 "$script_dir/upgrade.d/Constant_upgrade")" + # Arrêt de la machine virtualisée sudo lxc-stop -n $MACHINE diff --git a/upgrade.d/Constant_upgrade/Default_login b/upgrade.d/Constant_upgrade/Default_login new file mode 100644 index 0000000..a21c33d --- /dev/null +++ b/upgrade.d/Constant_upgrade/Default_login @@ -0,0 +1,20 @@ +#!/bin/bash + +# Ce script est un script d'exemple à dupliquer pour effectuer des modifications pérennes dans les conteneurs de demo. +# Le script n'est pas exécuté dans le conteneur, il convient donc d'utiliser lxc-attach pour opérer à l'intérieur. +# L'ensemble des scripts ajoutés ici seront exécutés après chaque upgrade des conteneurs dans la nuit, si une mise à jour a été effectivement opérée. +# Toutefois, l'exécution sera loggée dans $script_dir/demo_upgrade.log + +# Attention, veillez à vérifier que les fichiers doivent être modifiés avant de réappliquer le patch + +# Récupère le dossier du script +if [ "${0:0:1}" == "/" ]; then script_dir="$(dirname "$0")"; else script_dir="$PWD/$(dirname "$0" | cut -d '.' -f2)"; fi + +MACHINE=$1 # Nom du conteneur + +# Ajoute demo:demo par défaut pour le login et le password sur le portail +sed -i "s/id=\"user\" type=\"text\" name=\"user\" placeholder/id=\"user\" type=\"text\" name=\"user\" value=\"demo\" placeholder/" /var/lib/lxc/$MACHINE/rootfs/usr/share/ssowat/portal/login.html +sed -i "s/id=\"password\" type=\"password\" name=\"password\" placeholder/id=\"password\" type=\"password\" name=\"password\" value=\"demo\" placeholder/" /var/lib/lxc/$MACHINE/rootfs/usr/share/ssowat/portal/login.html + +# Idem sur l'admin +sed -i "s/type=\"password\" id=\"password\" name=\"password\" class/type=\"password\" id=\"password\" name=\"password\" value=\"demo\" class/" /var/lib/lxc/$MACHINE/rootfs/usr/share/yunohost/admin/views/login.ms diff --git a/upgrade.d/Constant_upgrade/Disable_add_domain b/upgrade.d/Constant_upgrade/Disable_add_domain new file mode 100644 index 0000000..acbe4d2 --- /dev/null +++ b/upgrade.d/Constant_upgrade/Disable_add_domain @@ -0,0 +1,15 @@ +#!/bin/bash + +# Ce script est un script d'exemple à dupliquer pour effectuer des modifications pérennes dans les conteneurs de demo. +# Le script n'est pas exécuté dans le conteneur, il convient donc d'utiliser lxc-attach pour opérer à l'intérieur. +# L'ensemble des scripts ajoutés ici seront exécutés après chaque upgrade des conteneurs dans la nuit, si une mise à jour a été effectivement opérée. +# Toutefois, l'exécution sera loggée dans $script_dir/demo_upgrade.log + +# Attention, veillez à vérifier que les fichiers doivent être modifiés avant de réappliquer le patch + +# Récupère le dossier du script +if [ "${0:0:1}" == "/" ]; then script_dir="$(dirname "$0")"; else script_dir="$PWD/$(dirname "$0" | cut -d '.' -f2)"; fi + +MACHINE=$1 # Nom du conteneur + +sed -i "s///g" /var/lib/lxc/$MACHINE/rootfs/usr/share/yunohost/admin/views/domain/domain_add.ms diff --git a/upgrade.d/Constant_upgrade/Disable_custom_apps b/upgrade.d/Constant_upgrade/Disable_custom_apps new file mode 100644 index 0000000..c8e9f9b --- /dev/null +++ b/upgrade.d/Constant_upgrade/Disable_custom_apps @@ -0,0 +1,15 @@ +#!/bin/bash + +# Ce script est un script d'exemple à dupliquer pour effectuer des modifications pérennes dans les conteneurs de demo. +# Le script n'est pas exécuté dans le conteneur, il convient donc d'utiliser lxc-attach pour opérer à l'intérieur. +# L'ensemble des scripts ajoutés ici seront exécutés après chaque upgrade des conteneurs dans la nuit, si une mise à jour a été effectivement opérée. +# Toutefois, l'exécution sera loggée dans $script_dir/demo_upgrade.log + +# Attention, veillez à vérifier que les fichiers doivent être modifiés avant de réappliquer le patch + +# Récupère le dossier du script +if [ "${0:0:1}" == "/" ]; then script_dir="$(dirname "$0")"; else script_dir="$PWD/$(dirname "$0" | cut -d '.' -f2)"; fi + +MACHINE=$1 # Nom du conteneur + +sed -i "s///g" /var/lib/lxc/$MACHINE/rootfs/usr/share/yunohost/admin/views/app/app_list_install.ms