Fix interfaces.d ignored

This commit is contained in:
Maniack Crudelis 2016-08-09 13:37:17 +02:00
parent a56e02abac
commit 0fb7b565ef
6 changed files with 28 additions and 9 deletions

View file

@ -32,6 +32,15 @@ Pour une app sur github: `./package_check.sh https://github.com/USER/APP_ynh`
Il est nécessaire de fournir, à la racine du package de l'app à tester, un fichier `check_process` pour indiquer au script les arguments attendu et les tests à effectuer.
Si ce fichier n'est pas présent, package_check sera utilisé en mode dégradé. Il va tenter de repérer les arguments domain, path et admin dans le manifest pour exécuter un nombre restreint de test, en fonction des arguments trouvés.
---
## Déploiement du script de test
```
git clone https://github.com/YunoHost/package_check
package_check/sub_scripts/lxc_build.sh
package_check/package_check.sh APP_ynh
```
---
## Syntaxe du fichier `check_process`
> A l'exception des espaces, la syntaxe du fichier doit être scrupuleusement respectée.
@ -162,6 +171,15 @@ For an app on github: `./package_check.sh https://github.com/USER/APP_ynh`
It's necessary to provide, at the root of package to be tested, a `check_process` file for inform the script of needed arguments and tests to perform.
If this file is not present, package_check will be used in downgraded mode. It try to retrieve domain, path and admin user arguments in the manifest for execute some tests, based on arguments found.
---
## Deploying test script
```
git clone https://github.com/YunoHost/package_check
package_check/sub_scripts/lxc_build.sh
package_check/package_check.sh APP_ynh
```
---
## Syntax `check_process` file
> Except space, this file syntax must be respected.

View file

@ -41,7 +41,7 @@ iface lxc-pchecker inet static
EOF
echo "> Active le bridge réseau" | tee -a "$LOG_BUILD_LXC"
sudo ifup lxc-pchecker >> "$LOG_BUILD_LXC" 2>&1
sudo ifup lxc-pchecker --interfaces=/etc/network/interfaces.d/lxc-pchecker >> "$LOG_BUILD_LXC" 2>&1
echo "> Configuration réseau du conteneur" | tee -a "$LOG_BUILD_LXC"
sudo sed -i 's/^lxc.network.type = empty$/lxc.network.type = veth\nlxc.network.flags = up\nlxc.network.link = lxc-pchecker\nlxc.network.name = eth0\nlxc.network.veth.pair = $LXC_NAME\nlxc.network.hwaddr = 00:FF:AA:00:00:01/' /var/lib/lxc/$LXC_NAME/config >> "$LOG_BUILD_LXC" 2>&1
@ -128,7 +128,7 @@ echo "> Suppression des règles de parefeu" | tee -a "$LOG_BUILD_LXC"
sudo iptables -D FORWARD -i lxc-pchecker -o eth0 -j ACCEPT >> "$LOG_BUILD_LXC" 2>&1
sudo iptables -D FORWARD -i eth0 -o lxc-pchecker -j ACCEPT >> "$LOG_BUILD_LXC" 2>&1
sudo iptables -t nat -D POSTROUTING -s $PLAGE_IP.0/24 -j MASQUERADE >> "$LOG_BUILD_LXC" 2>&1
sudo ifdown lxc-pchecker >> "$LOG_BUILD_LXC" 2>&1
sudo ifdown --force lxc-pchecker >> "$LOG_BUILD_LXC" 2>&1
echo "> Création d'un snapshot" | tee -a "$LOG_BUILD_LXC"
sudo lxc-snapshot -n $LXC_NAME >> "$LOG_BUILD_LXC" 2>&1

View file

@ -8,7 +8,7 @@ echo -e "Chargement des fonctions de lxc_launcher.sh"
LXC_INIT () {
# Activation du bridge réseau
echo "Initialisation du réseau pour le conteneur."
sudo ifup lxc-pchecker | tee -a "$RESULT" 2>&1
sudo ifup lxc-pchecker --interfaces=/etc/network/interfaces.d/lxc-pchecker | tee -a "$RESULT" 2>&1
# Activation des règles iptables
sudo iptables -A FORWARD -i lxc-pchecker -o eth0 -j ACCEPT | tee -a "$RESULT" 2>&1
@ -79,6 +79,6 @@ LXC_TURNOFF () {
# Et arrêt du bridge
if sudo ifquery lxc-pchecker --state > /dev/null
then
sudo ifdown lxc-pchecker | tee -a "$RESULT" 2>&1
sudo ifdown --force lxc-pchecker | tee -a "$RESULT" 2>&1
fi
}

View file

@ -19,7 +19,7 @@ sudo rm /etc/sysctl.d/lxc_pchecker.conf
sudo sysctl -p
echo "> Désactive le bridge réseau"
sudo ifdown lxc-pchecker
sudo ifdown --force lxc-pchecker
echo "> Supprime le brige réseau"
sudo rm /etc/network/interfaces.d/lxc-pchecker

View file

@ -9,7 +9,7 @@ LXC_NAME=$(cat "$script_dir/lxc_build.sh" | grep LXC_NAME= | cut -d '=' -f2)
echo "> Active le bridge réseau"
if ! sudo ifquery lxc-pchecker --state > /dev/null
then
sudo ifup lxc-pchecker
sudo ifup lxc-pchecker --interfaces=/etc/network/interfaces.d/lxc-pchecker
fi
echo "> Configure le parefeu"
@ -58,7 +58,7 @@ echo "> Suppression des règles de parefeu"
sudo iptables -D FORWARD -i lxc-pchecker -o eth0 -j ACCEPT
sudo iptables -D FORWARD -i eth0 -o lxc-pchecker -j ACCEPT
sudo iptables -t nat -D POSTROUTING -s $PLAGE_IP.0/24 -j MASQUERADE
sudo ifdown lxc-pchecker
sudo ifdown --force lxc-pchecker
if [ "$update_apt" -eq 1 ]

View file

@ -555,20 +555,21 @@ CHECK_MULTI_INSTANCE () {
return;
fi
# Installation de l'app une première fois
ECHO_FORMAT "1ère installation: path=$PATH_TEST\n"
SETUP_APP
LOG_EXTRACTOR
APPID_first=$APPID # Stocke le nom de la première instance
YUNOHOST_RESULT_first=$YUNOHOST_RESULT # Stocke le résulat de l'installation de la première instance
# Installation de l'app une deuxième fois, en ajoutant un suffixe au path
ECHO_FORMAT "2e installation\n"
path2="$PATH_TEST-2"
ECHO_FORMAT "2e installation: path=$path2\n"
MANIFEST_ARGS_MOD=$(echo $MANIFEST_ARGS_MOD | sed "s@$MANIFEST_PATH=[a-Z/$]*\&@$MANIFEST_PATH=$path2\&@")
SETUP_APP
LOG_EXTRACTOR
APPID_second=$APPID # Stocke le nom de la deuxième instance
YUNOHOST_RESULT_second=$YUNOHOST_RESULT # Stocke le résulat de l'installation de la deuxième instance
ECHO_FORMAT "3e installation\n"
path3="/3-${PATH_TEST#/}"
ECHO_FORMAT "3e installation: path=$path3\n"
# Installation de l'app une troisième fois, en ajoutant un préfixe au path
MANIFEST_ARGS_MOD=$(echo $MANIFEST_ARGS_MOD | sed "s@$MANIFEST_PATH=$path2\&@$MANIFEST_PATH=$path3\&@")
SETUP_APP