mirror of
https://github.com/YunoHost/package_check.git
synced 2024-09-03 20:06:20 +02:00
Commentaires, correction scenar multiples, privé, lxc, curl
This commit is contained in:
parent
76cd4f0596
commit
92dc8555c7
8 changed files with 154 additions and 141 deletions
13
README.md
13
README.md
|
@ -36,9 +36,10 @@ Il est nécessaire de fournir, à la racine du package de l'app à tester, un fi
|
|||
> L'ordre des lignes n'a toutefois pas d'importance.
|
||||
|
||||
```
|
||||
## Nom du test
|
||||
;; Nom du test
|
||||
auto_remove=1
|
||||
# Manifest
|
||||
# Commentaire ignoré
|
||||
; Manifest
|
||||
domain="$DOMAIN" (DOMAIN)
|
||||
path="$PATH" (PATH)
|
||||
admin="$USER" (USER)
|
||||
|
@ -46,7 +47,7 @@ Il est nécessaire de fournir, à la racine du package de l'app à tester, un fi
|
|||
is_public="Yes" (PUBLIC|public=Yes|private=No)
|
||||
password="$PASSWORD" (PASSWORD)
|
||||
port="666" (PORT)
|
||||
# Checks
|
||||
; Checks
|
||||
setup_sub_dir=1
|
||||
setup_root=1
|
||||
setup_nourl=0
|
||||
|
@ -63,7 +64,7 @@ Il est nécessaire de fournir, à la racine du package de l'app à tester, un fi
|
|||
port_already_use=1 (XXXX)
|
||||
final_path_already_use=0
|
||||
```
|
||||
### `## Nom du test`
|
||||
### `;; Nom du test`
|
||||
Nom du scénario de test qui sera effectué.
|
||||
On peut créer autant de scénario de test que voulu, tous ayant la même syntaxe.
|
||||
Les différents scénarios de test seront exécutés successivement.
|
||||
|
@ -72,7 +73,7 @@ Les différents scénarios de test seront exécutés successivement.
|
|||
Si `auto_remove` est à 0, le script marque une pause avant chaque suppression de l'app. Afin d'éffectuer des vérifications manuelles si nécessaire.
|
||||
Sinon, l'app est supprimée automatiquement et les tests continuent.
|
||||
|
||||
### `# Manifest`
|
||||
### `; Manifest`
|
||||
Ensemble des clés du manifest.
|
||||
Toutes les clés du manifest doivent être renseignée afin de procéder à l'installation.
|
||||
> Les clés de manifest données ici ne le sont qu'à titre d'exemple. Voir le manifest de l'application.
|
||||
|
@ -80,7 +81,7 @@ Certaines clés de manifest sont indispensables au script pour effectuer certain
|
|||
`(DOMAIN)`, `(PATH)`, `(USER)`, `(PASSWORD)` et `(PORT)` doivent être mis en bout de ligne des clés correspondantes. Ces clés seront modifiées par le script.
|
||||
`(PUBLIC|public=Yes|private=No)` doit, en plus de correspondre à la clé de visibilité public, indiquer les valeurs du manifest pour public et privé.
|
||||
|
||||
### `# Checks`
|
||||
### `; Checks`
|
||||
Ensemble des tests à effectuer.
|
||||
Chaque test marqué à 1 sera effectué par le script.
|
||||
Si un test est absent de la liste, il sera ignoré. Cela revient à le noter à 0.
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
## Nom du test
|
||||
;; Nom du test
|
||||
auto_remove=1
|
||||
# Manifest
|
||||
# Commentaire ignoré
|
||||
; Manifest
|
||||
domain="domain.tld" (DOMAIN)
|
||||
path="/path" (PATH)
|
||||
admin="john" (USER)
|
||||
|
@ -8,7 +9,7 @@
|
|||
is_public="Yes" (PUBLIC|public=Yes|private=No)
|
||||
password="pass" (PASSWORD)
|
||||
port="666" (PORT)
|
||||
# Checks
|
||||
; Checks
|
||||
setup_sub_dir=1
|
||||
setup_root=1
|
||||
setup_nourl=0
|
||||
|
|
116
package_check.sh
116
package_check.sh
|
@ -106,7 +106,7 @@ then
|
|||
git clone $arg_app "$(basename $arg_app)_check"
|
||||
else
|
||||
# Si c'est un dossier local, il est copié dans le dossier du script.
|
||||
sudo cp -a "$arg_app" "$(basename $arg_app)_check"
|
||||
sudo cp -a --remove-destination "$arg_app" "$(basename $arg_app)_check"
|
||||
fi
|
||||
APP_CHECK="$(basename $arg_app)_check"
|
||||
if [ ! -d "$APP_CHECK" ]; then
|
||||
|
@ -296,28 +296,32 @@ TEST_RESULTS () {
|
|||
ECHO_FORMAT "\t\t\t\tNot evaluated.\n" "white"
|
||||
fi
|
||||
ECHO_FORMAT "\t\t Notes de résultats: $note/$tnote - " "white" "bold"
|
||||
note=$(( note * 20 / tnote ))
|
||||
if [ $note -le 5 ]; then
|
||||
color_note="red"
|
||||
typo_note="bold"
|
||||
smiley=":'(" # La contribution à Shasha. Qui m'a forcé à ajouté les smiley sous la contrainte ;)
|
||||
elif [ $note -le 10 ]; then
|
||||
color_note="red"
|
||||
typo_note=""
|
||||
smiley=":("
|
||||
elif [ $note -le 15 ]; then
|
||||
color_note="lyellow"
|
||||
typo_note=""
|
||||
smiley=":s"
|
||||
elif [ $note -gt 15 ]; then
|
||||
color_note="lgreen"
|
||||
typo_note=""
|
||||
smiley=":)"
|
||||
elif [ $note -eq 20 ]; then
|
||||
color_note="lgreen"
|
||||
typo_note="bold"
|
||||
smiley="\o/"
|
||||
if [ "$note" -gt 0 ]
|
||||
then
|
||||
note=$(( note * 20 / tnote ))
|
||||
fi
|
||||
if [ "$note" -le 5 ]; then
|
||||
color_note="red"
|
||||
typo_note="bold"
|
||||
smiley=":'(" # La contribution à Shasha. Qui m'a forcé à ajouté les smiley sous la contrainte ;)
|
||||
elif [ "$note" -le 10 ]; then
|
||||
color_note="red"
|
||||
typo_note=""
|
||||
smiley=":("
|
||||
elif [ "$note" -le 15 ]; then
|
||||
color_note="lyellow"
|
||||
typo_note=""
|
||||
smiley=":s"
|
||||
elif [ "$note" -gt 15 ]; then
|
||||
color_note="lgreen"
|
||||
typo_note=""
|
||||
smiley=":)"
|
||||
fi
|
||||
if [ "$note" -ge 20 ]; then
|
||||
color_note="lgreen"
|
||||
typo_note="bold"
|
||||
smiley="\o/"
|
||||
fi
|
||||
ECHO_FORMAT "$note/20 $smiley\n" "$color_note" "$typo_note"
|
||||
ECHO_FORMAT "\t Ensemble de tests effectués: $tnote/19\n\n" "white" "bold"
|
||||
}
|
||||
|
@ -346,6 +350,10 @@ INIT_VAR() {
|
|||
MANIFEST=0
|
||||
CHECKS=0
|
||||
auto_remove=1
|
||||
install_pass=0
|
||||
note=0
|
||||
tnote=0
|
||||
all_test=0
|
||||
|
||||
MANIFEST_DOMAIN="null"
|
||||
MANIFEST_PATH="null"
|
||||
|
@ -376,20 +384,22 @@ INIT_VAR() {
|
|||
INIT_VAR
|
||||
echo -n "" > $COMPLETE_LOG # Initialise le fichier de log
|
||||
echo -n "" > $RESULT # Initialise le fichier des résulats d'analyse
|
||||
note=0
|
||||
tnote=0
|
||||
all_test=0
|
||||
if [ "$no_lxc" -eq 0 ]; then
|
||||
LXC_INIT
|
||||
fi
|
||||
|
||||
## Parsing du fichier check_process de manière séquentielle.
|
||||
while read LIGNE
|
||||
while read <&4 LIGNE
|
||||
do
|
||||
if echo "$LIGNE" | grep -q "auto_remove="; then # Indication d'auto remove
|
||||
LIGNE=$(echo $LIGNE | sed 's/^ *"//g') # Efface les espaces en début de ligne
|
||||
if [ "${LIGNE:0:1}" == "#" ]; then
|
||||
# Ligne de commentaire, ignorée.
|
||||
continue
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "^auto_remove="; then # Indication d'auto remove
|
||||
auto_remove=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "^##"; then # Début d'un scénario de test
|
||||
if echo "$LIGNE" | grep -q "^;;"; then # Début d'un scénario de test
|
||||
if [ "$IN_PROCESS" -eq 1 ]; then # Un scénario est déjà en cours. Donc on a atteind la fin du scénario.
|
||||
TESTING_PROCESS
|
||||
TEST_RESULTS
|
||||
|
@ -398,16 +408,18 @@ do
|
|||
read -p "Appuyer sur une touche pour démarrer le scénario de test suivant..." < /dev/tty
|
||||
fi
|
||||
fi
|
||||
PROCESS_NAME=${LIGNE#\#\# }
|
||||
PROCESS_NAME=${LIGNE#;; }
|
||||
IN_PROCESS=1
|
||||
MANIFEST=0
|
||||
CHECKS=0
|
||||
fi
|
||||
if [ "$IN_PROCESS" -eq 1 ]
|
||||
then # Analyse des arguments du scenario de test
|
||||
if echo "$LIGNE" | grep -q "# Manifest"; then # Arguments du manifest
|
||||
if echo "$LIGNE" | grep -q "^; Manifest"; then # Arguments du manifest
|
||||
MANIFEST=1
|
||||
MANIFEST_ARGS="" # Initialise la chaine des arguments d'installation
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "# Checks"; then # Tests à effectuer
|
||||
if echo "$LIGNE" | grep -q "^; Checks"; then # Tests à effectuer
|
||||
MANIFEST=0
|
||||
CHECKS=1
|
||||
fi
|
||||
|
@ -440,93 +452,93 @@ do
|
|||
MANIFEST_PORT=$(echo "$LIGNE" | cut -d '=' -f1) # Récupère la clé du manifest correspondant au port
|
||||
LIGNE=$(echo "$LIGNE" | cut -d '(' -f1) # Retire l'indicateur de clé de manifest à la fin de la ligne
|
||||
fi
|
||||
if [ "${#MANIFEST_ARGS}" -gt 0 ]; then # Si il y a déjà des arguments
|
||||
MANIFEST_ARGS="$MANIFEST_ARGS&" #, précède de &
|
||||
fi
|
||||
MANIFEST_ARGS="$MANIFEST_ARGS$(echo $LIGNE | sed 's/[ \"]//g')" # Ajoute l'argument du manifest, en retirant les espaces et les guillemets.
|
||||
# if [ "${#MANIFEST_ARGS}" -gt 0 ]; then # Si il y a déjà des arguments
|
||||
# MANIFEST_ARGS="$MANIFEST_ARGS&" #, précède de &
|
||||
# fi
|
||||
MANIFEST_ARGS="$MANIFEST_ARGS$(echo $LIGNE | sed 's/^ *\| *$\|\"//g')&" # Ajoute l'argument du manifest, en retirant les espaces de début et de fin ainsi que les guillemets.
|
||||
fi
|
||||
fi
|
||||
if [ "$CHECKS" -eq 1 ]
|
||||
then # Analyse des tests à effectuer sur ce scenario.
|
||||
if echo "$LIGNE" | grep -q "setup_sub_dir="; then # Test d'installation en sous-dossier
|
||||
if echo "$LIGNE" | grep -q "^setup_sub_dir="; then # Test d'installation en sous-dossier
|
||||
setup_sub_dir=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$setup_sub_dir" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "setup_root="; then # Test d'installation à la racine
|
||||
if echo "$LIGNE" | grep -q "^setup_root="; then # Test d'installation à la racine
|
||||
setup_root=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$setup_root" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "setup_nourl="; then # Test d'installation sans accès par url
|
||||
if echo "$LIGNE" | grep -q "^setup_nourl="; then # Test d'installation sans accès par url
|
||||
setup_nourl=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$setup_nourl" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "setup_private="; then # Test d'installation en privé
|
||||
if echo "$LIGNE" | grep -q "^setup_private="; then # Test d'installation en privé
|
||||
setup_private=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$setup_private" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "setup_public="; then # Test d'installation en public
|
||||
if echo "$LIGNE" | grep -q "^setup_public="; then # Test d'installation en public
|
||||
setup_public=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$setup_public" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "upgrade="; then # Test d'upgrade
|
||||
if echo "$LIGNE" | grep -q "^upgrade="; then # Test d'upgrade
|
||||
upgrade=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$upgrade" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "backup_restore="; then # Test de backup et restore
|
||||
if echo "$LIGNE" | grep -q "^backup_restore="; then # Test de backup et restore
|
||||
backup_restore=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$backup_restore" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "multi_instance="; then # Test d'installation multiple
|
||||
if echo "$LIGNE" | grep -q "^multi_instance="; then # Test d'installation multiple
|
||||
multi_instance=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$multi_instance" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "wrong_user="; then # Test d'erreur d'utilisateur
|
||||
if echo "$LIGNE" | grep -q "^wrong_user="; then # Test d'erreur d'utilisateur
|
||||
wrong_user=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$wrong_user" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "wrong_path="; then # Test d'erreur de path ou de domaine
|
||||
if echo "$LIGNE" | grep -q "^wrong_path="; then # Test d'erreur de path ou de domaine
|
||||
wrong_path=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$wrong_path" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "incorrect_path="; then # Test d'erreur de forme de path
|
||||
if echo "$LIGNE" | grep -q "^incorrect_path="; then # Test d'erreur de forme de path
|
||||
incorrect_path=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$incorrect_path" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "corrupt_source="; then # Test d'erreur sur source corrompue
|
||||
if echo "$LIGNE" | grep -q "^corrupt_source="; then # Test d'erreur sur source corrompue
|
||||
corrupt_source=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$corrupt_source" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "fail_download_source="; then # Test d'erreur de téléchargement de la source
|
||||
if echo "$LIGNE" | grep -q "^fail_download_source="; then # Test d'erreur de téléchargement de la source
|
||||
fail_download_source=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$fail_download_source" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "port_already_use="; then # Test d'erreur de port
|
||||
if echo "$LIGNE" | grep -q "^port_already_use="; then # Test d'erreur de port
|
||||
port_already_use=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if echo "$LIGNE" | grep -q "([0-9]*)"
|
||||
then # Le port est mentionné ici.
|
||||
|
@ -537,16 +549,16 @@ do
|
|||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
if echo "$LIGNE" | grep -q "final_path_already_use="; then # Test sur final path déjà utilisé.
|
||||
if echo "$LIGNE" | grep -q "^final_path_already_use="; then # Test sur final path déjà utilisé.
|
||||
final_path_already_use=$(echo "$LIGNE" | cut -d '=' -f2)
|
||||
if [ "$final_path_already_use" -eq 1 ]; then
|
||||
all_test=$((all_test+1))
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
fi
|
||||
done < "$APP_CHECK/check_process"
|
||||
done 4< "$APP_CHECK/check_process" # Utilise le descripteur de fichier 4. Car le descripteur 1 est utilisé par d'autres boucles while read dans ces scripts.
|
||||
|
||||
|
||||
TESTING_PROCESS
|
||||
if [ "$no_lxc" -eq 0 ]; then
|
||||
|
|
6
sub_scripts/log_extractor.sh
Executable file → Normal file
6
sub_scripts/log_extractor.sh
Executable file → Normal file
|
@ -28,7 +28,11 @@ ECHO_FORMAT () {
|
|||
if [ "$3" == "underlined" ]; then
|
||||
echo -en "\e[4m"
|
||||
fi
|
||||
echo -en "$1" | tee -a $RESULT
|
||||
copy_log=--
|
||||
if [ "$4" == "clog" ]; then
|
||||
copy_log=$COMPLETE_LOG
|
||||
fi
|
||||
echo -en "$1" | tee -a "$RESULT" "$copy_log"
|
||||
echo -en "\e[0m"
|
||||
}
|
||||
|
||||
|
|
|
@ -17,18 +17,18 @@ then # $EUID est vide sur une exécution avec sudo. Et vaut 0 pour root
|
|||
fi
|
||||
|
||||
|
||||
echo ">> Update et install lxc lxctl" | tee "$LOG_BUILD_LXC"
|
||||
echo "Update et install lxc lxctl" | tee "$LOG_BUILD_LXC"
|
||||
sudo apt-get update >> "$LOG_BUILD_LXC" 2>&1
|
||||
sudo apt-get install -y lxc lxctl >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Création d'une machine debian jessie minimaliste" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Création d'une machine debian jessie minimaliste" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-create -n $LXC_NAME -t debian -- -r jessie >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Autoriser l'ip forwarding, pour router vers la machine virtuelle." | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Autoriser l'ip forwarding, pour router vers la machine virtuelle." | tee -a "$LOG_BUILD_LXC"
|
||||
echo "net.ipv4.ip_forward=1" | sudo tee /etc/sysctl.d/lxc_pchecker.conf >> "$LOG_BUILD_LXC" 2>&1
|
||||
sudo sysctl -p /etc/sysctl.d/lxc_pchecker.conf >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Ajoute un brige réseau pour la machine virtualisée" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Ajoute un brige réseau pour la machine virtualisée" | tee -a "$LOG_BUILD_LXC"
|
||||
echo | sudo tee /etc/network/interfaces.d/lxc-pchecker <<EOF >> "$LOG_BUILD_LXC" 2>&1
|
||||
auto lxc-pchecker
|
||||
iface lxc-pchecker inet static
|
||||
|
@ -38,41 +38,41 @@ iface lxc-pchecker inet static
|
|||
bridge_maxwait 0
|
||||
EOF
|
||||
|
||||
echo ">> Active le bridge réseau" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Active le bridge réseau" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo ifup lxc-pchecker >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Configuration réseau du conteneur" | tee -a "$LOG_BUILD_LXC"
|
||||
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
|
||||
|
||||
echo ">> Configuration réseau de la machine virtualisée" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Configuration réseau de la machine virtualisée" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo sed -i "s@iface eth0 inet dhcp@iface eth0 inet static\n\taddress $PLAGE_IP.2/24\n\tgateway $PLAGE_IP.1@" /var/lib/lxc/$LXC_NAME/rootfs/etc/network/interfaces >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Configure le parefeu" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Configure le parefeu" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo iptables -A FORWARD -i lxc-pchecker -o eth0 -j ACCEPT >> "$LOG_BUILD_LXC" 2>&1
|
||||
sudo iptables -A FORWARD -i eth0 -o lxc-pchecker -j ACCEPT >> "$LOG_BUILD_LXC" 2>&1
|
||||
sudo iptables -t nat -A POSTROUTING -s $PLAGE_IP.0/24 -j MASQUERADE >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Démarrage de la machine" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Démarrage de la machine" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-start -n $LXC_NAME -d >> "$LOG_BUILD_LXC" 2>&1
|
||||
sleep 3
|
||||
sudo lxc-ls -f >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Update et install tasksel sudo git" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Update et install tasksel sudo git" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get update
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get install -y tasksel sudo git
|
||||
echo "Installation des paquets standard et ssh-server" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-attach -n $LXC_NAME -- tasksel install standard ssh-server
|
||||
|
||||
echo ">> Renseigne /etc/hosts sur l'invité" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Renseigne /etc/hosts sur l'invité" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-attach -n $LXC_NAME -- echo "127.0.0.1 $LXC_NAME" | sudo tee -a /var/lib/lxc/$LXC_NAME/rootfs/etc/hosts >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Ajoute l'user pchecker" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Ajoute l'user pchecker" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-attach -n $LXC_NAME -- useradd -m -p pchecker pchecker >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Autorise pchecker à utiliser sudo sans mot de passe" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Autorise pchecker à utiliser sudo sans mot de passe" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "pchecker ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee -a /var/lib/lxc/$LXC_NAME/rootfs/etc/sudoers >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Mise en place de la connexion ssh vers l'invité." | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Mise en place de la connexion ssh vers l'invité." | tee -a "$LOG_BUILD_LXC"
|
||||
ssh-keygen -t dsa -f $HOME/.ssh/$LXC_NAME -P '' >> "$LOG_BUILD_LXC" 2>&1
|
||||
sudo mkdir /var/lib/lxc/$LXC_NAME/rootfs/home/pchecker/.ssh >> "$LOG_BUILD_LXC" 2>&1
|
||||
sudo cp $HOME/.ssh/$LXC_NAME.pub /var/lib/lxc/$LXC_NAME/rootfs/home/pchecker/.ssh/authorized_keys >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
@ -86,45 +86,40 @@ User pchecker
|
|||
IdentityFile $HOME/.ssh/$LXC_NAME
|
||||
EOF
|
||||
|
||||
echo -e "\007" # bell
|
||||
ssh $ARG_SSH $LXC_NAME "exit 0" # Initie une premier connexion SSH pour valider la clé.
|
||||
if [ "$?" -ne 0 ]; then # Si l'utilisateur tarde trop, la connexion sera refusée... ???
|
||||
ssh $ARG_SSH $LXC_NAME "exit 0" # Initie une premier connexion SSH pour valider la clé.
|
||||
fi
|
||||
|
||||
ssh $ARG_SSH $LXC_NAME "git clone https://github.com/YunoHost/install_script /tmp/install_script" >> "$LOG_BUILD_LXC" 2>&1
|
||||
echo ">> Installation de Yunohost..." | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Installation de Yunohost..." | tee -a "$LOG_BUILD_LXC"
|
||||
ssh $ARG_SSH $LXC_NAME "cd /tmp/install_script; sudo ./install_yunohost -a" | tee -a "$LOG_BUILD_LXC" 2>&1
|
||||
echo ">> Post install Yunohost" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Post install Yunohost" | tee -a "$LOG_BUILD_LXC"
|
||||
ssh $ARG_SSH $LXC_NAME "sudo yunohost tools postinstall --domain $DOMAIN --password $YUNO_PWD" | tee -a "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
USER_TEST=$(cat ../package_check.sh | grep USER_TEST= | cut -d '=' -f2)
|
||||
PASSWORD_TEST=$(cat ../package_check.sh | grep PASSWORD_TEST= | cut -d '=' -f2)
|
||||
SOUS_DOMAIN="sous.$DOMAIN"
|
||||
echo -e "\007" # bell
|
||||
echo ">> Le mot de passe Yunohost est \'$YUNO_PWD\'"
|
||||
echo ">> Ajout du sous domaine de test" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Le mot de passe Yunohost est \'$YUNO_PWD\'"
|
||||
echo "Ajout du sous domaine de test" | tee -a "$LOG_BUILD_LXC"
|
||||
ssh $ARG_SSH $LXC_NAME "sudo yunohost domain add \"$SOUS_DOMAIN\""
|
||||
USER_TEST_CLEAN=${USER_TEST//"_"/""}
|
||||
echo -e "\007" # bell
|
||||
echo ">> Le mot de passe Yunohost est \'$YUNO_PWD\'"
|
||||
echo ">> Ajout de l'utilisateur de test" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Ajout de l'utilisateur de test" | tee -a "$LOG_BUILD_LXC"
|
||||
ssh $ARG_SSH $LXC_NAME "sudo yunohost user create --firstname \"$USER_TEST_CLEAN\" --mail \"$USER_TEST_CLEAN@$DOMAIN\" --lastname \"$USER_TEST_CLEAN\" --password \"$PASSWORD_TEST\" \"$USER_TEST\""
|
||||
|
||||
echo -e "\n>> Vérification de l'état de Yunohost" | tee -a "$LOG_BUILD_LXC"
|
||||
echo -e "\nVérification de l'état de Yunohost" | tee -a "$LOG_BUILD_LXC"
|
||||
ssh $ARG_SSH $LXC_NAME "sudo yunohost -v" | tee -a "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
|
||||
echo -e "\007" # bell
|
||||
echo ">> Arrêt de la machine virtualisée" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Arrêt de la machine virtualisée" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-stop -n $LXC_NAME >> "$LOG_BUILD_LXC" 2>&1
|
||||
|
||||
echo ">> Suppression des règles de parefeu" | tee -a "$LOG_BUILD_LXC"
|
||||
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
|
||||
|
||||
echo ">> Création d'un snapshot" | tee -a "$LOG_BUILD_LXC"
|
||||
echo "Création d'un snapshot" | tee -a "$LOG_BUILD_LXC"
|
||||
sudo lxc-snapshot -n $LXC_NAME >> "$LOG_BUILD_LXC" 2>&1
|
||||
# Il sera nommé snap0 et stocké dans /var/lib/lxcsnaps/$LXC_NAME/snap0/
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
LXC_NAME=$(cat lxc_build.sh | grep LXC_NAME= | cut -d '=' -f2)
|
||||
LXC_NAME=$(cat sub_scripts/lxc_build.sh | grep LXC_NAME= | cut -d '=' -f2)
|
||||
|
||||
# Check root
|
||||
CHECK_ROOT=$EUID
|
||||
|
@ -11,25 +11,24 @@ then # $EUID est vide sur une exécution avec sudo. Et vaut 0 pour root
|
|||
exit 1
|
||||
fi
|
||||
|
||||
echo ">> Retire l'ip forwarding."
|
||||
echo "Retire l'ip forwarding."
|
||||
sudo rm /etc/sysctl.d/lxc_pchecker.conf
|
||||
sudo sysctl -p
|
||||
|
||||
echo ">> Désactive le bridge réseau"
|
||||
echo "Désactive le bridge réseau"
|
||||
sudo ifdown lxc-pchecker
|
||||
|
||||
echo ">> Supprime le brige réseau"
|
||||
echo "Supprime le brige réseau"
|
||||
sudo rm /etc/network/interfaces.d/lxc-pchecker
|
||||
|
||||
echo ">> Suppression de la machine et de son snapshots"
|
||||
sudo lxc-stop -n $LXC_NAME
|
||||
echo "Suppression de la machine et de son snapshots"
|
||||
sudo lxc-snapshot -n $LXC_NAME -d snap0
|
||||
sudo rm -f /var/lib/lxcsnaps/$LXC_NAME/snap0.tar.gz
|
||||
sudo lxc-destroy -n $LXC_NAME -f
|
||||
|
||||
echo ">> Remove lxc lxctl"
|
||||
echo "Remove lxc lxctl"
|
||||
sudo apt-get remove lxc lxctl
|
||||
|
||||
echo ">> Suppression des lignes de pchecker_lxc dans .ssh/config"
|
||||
BEGIN_LINE=$(cat $HOME/.ssh/config | grep "^# ssh pchecker_lxc$")
|
||||
sed -i "/^$BEGIN_LINE$/,/^IdentityFile$/d" $HOME/.ssh/config
|
||||
echo "Suppression des lignes de pchecker_lxc dans .ssh/config"
|
||||
BEGIN_LINE=$(cat $HOME/.ssh/config | grep -n "^# ssh pchecker_lxc$" | cut -d':' -f 1)
|
||||
sed -i "$BEGIN_LINE,/^IdentityFile/d" $HOME/.ssh/config
|
||||
|
|
28
sub_scripts/lxc_upgrade.sh
Executable file → Normal file
28
sub_scripts/lxc_upgrade.sh
Executable file → Normal file
|
@ -3,13 +3,13 @@
|
|||
PLAGE_IP=$(cat lxc_build.sh | grep PLAGE_IP= | cut -d '"' -f2)
|
||||
LXC_NAME=$(cat lxc_build.sh | grep LXC_NAME= | cut -d '=' -f2)
|
||||
|
||||
echo ">> Active le bridge réseau"
|
||||
echo "Active le bridge réseau"
|
||||
if ! sudo ifquery lxc-pchecker --state > /dev/null
|
||||
then
|
||||
sudo ifup lxc-pchecker
|
||||
fi
|
||||
|
||||
echo ">> Configure le parefeu"
|
||||
echo "Configure le parefeu"
|
||||
if ! sudo iptables -D FORWARD -i lxc-pchecker -o eth0 -j ACCEPT 2> /dev/null
|
||||
then
|
||||
sudo iptables -A FORWARD -i lxc-pchecker -o eth0 -j ACCEPT
|
||||
|
@ -23,48 +23,46 @@ then
|
|||
sudo iptables -t nat -A POSTROUTING -s $PLAGE_IP.0/24 -j MASQUERADE
|
||||
fi
|
||||
|
||||
echo ">> Démarrage de la machine"
|
||||
echo "Démarrage de la machine"
|
||||
if [ $(sudo lxc-info --name $LXC_NAME | grep -c "STOPPED") -eq 0 ]; then
|
||||
# Si la machine n'est pas à l'arrêt.
|
||||
sudo lxc-stop -n $LXC_NAME # Arrête la machine LXC
|
||||
fi
|
||||
# Restaure le snapshot
|
||||
sudo rsync -aEAX --delete /var/lib/lxcsnaps/$LXC_NAME/snap0/rootfs/ /var/lib/lxc/$LXC_NAME/rootfs/ # Pour être sûr!
|
||||
sudo rsync -aEAX --delete -i /var/lib/lxcsnaps/$LXC_NAME/snap0/rootfs/ /var/lib/lxc/$LXC_NAME/rootfs/ # Pour être sûr!
|
||||
|
||||
sudo lxc-start -n $LXC_NAME -d
|
||||
sleep 3
|
||||
sudo lxc-ls -f
|
||||
|
||||
echo ">> Update"
|
||||
echo "Update"
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get update
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get dist-upgrade --dry-run | grep -q "^Inst " # Vérifie si il y aura des mises à jour.
|
||||
if [ "$?" -eq 0 ]; then
|
||||
update_apt=1
|
||||
else
|
||||
update_apt=0
|
||||
|
||||
fi
|
||||
echo ">> Upgrade"
|
||||
echo "update_apt=$update_apt"
|
||||
echo "Upgrade"
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get dist-upgrade
|
||||
echo ">> Clean"
|
||||
echo "Clean"
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get autoremove
|
||||
sudo lxc-attach -n $LXC_NAME -- apt-get autoclean
|
||||
|
||||
echo ">> Arrêt de la machine virtualisée"
|
||||
echo "Arrêt de la machine virtualisée"
|
||||
sudo lxc-stop -n $LXC_NAME
|
||||
|
||||
echo ">> Suppression des règles de parefeu"
|
||||
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 lzc-pchecker
|
||||
|
||||
|
||||
if [ "$update_apt" -eq 1 ]
|
||||
then
|
||||
echo ">> Archivage du snapshot"
|
||||
echo "Archivage du snapshot"
|
||||
sudo tar -czf --acls --xattrs /var/lib/lxcsnaps/$LXC_NAME/snap0.tar.gz /var/lib/lxcsnaps/$LXC_NAME/snap0
|
||||
echo ">> Remplacement du snapshot"
|
||||
echo "Remplacement du snapshot"
|
||||
sudo lxc-snapshot -n $LXC_NAME -d snap0
|
||||
sudo lxc-snapshot -n $LXC_NAME
|
||||
fi
|
||||
|
|
55
sub_scripts/testing_process.sh
Executable file → Normal file
55
sub_scripts/testing_process.sh
Executable file → Normal file
|
@ -8,7 +8,8 @@ echo -e "\nChargement des fonctions de testing_process.sh"
|
|||
source $abs_path/sub_scripts/log_extractor.sh
|
||||
|
||||
SETUP_APP () {
|
||||
# echo -e "MANIFEST_ARGS=$MANIFEST_ARGS_MOD"
|
||||
# echo -e "MANIFEST_ARGS=$MANIFEST_ARGS"
|
||||
# echo -e "MANIFEST_ARGS_MOD=$MANIFEST_ARGS_MOD"
|
||||
COPY_LOG 1
|
||||
LXC_START "sudo yunohost --debug app install $APP_CHECK -a \"$MANIFEST_ARGS_MOD\""
|
||||
YUNOHOST_RESULT=$?
|
||||
|
@ -32,12 +33,13 @@ REMOVE_APP () {
|
|||
|
||||
CHECK_URL () {
|
||||
ECHO_FORMAT "\nAccès par l'url...\n" "white" "bold"
|
||||
rm -f url_output # Supprime le précédent fichier html si il est encore présent
|
||||
if [ "$no_lxc" -eq 0 ]; then
|
||||
IP_CURL="$(cat sub_scripts/lxc_build.sh | grep PLAGE_IP= | cut -d '"' -f2).2"
|
||||
else
|
||||
IP_CURL="127.0.0.1"
|
||||
fi
|
||||
echo "$IP_CURL $SOUS_DOMAIN #package_check" | sudo tee -a /etc/hosts > /dev/null # Renseigne le hosts pour le domain à tester, pour passer directement sur localhost
|
||||
echo -e "$IP_CURL $DOMAIN #package_check\n$IP_CURL $SOUS_DOMAIN #package_check" | sudo tee -a /etc/hosts > /dev/null # Renseigne le hosts pour le domain à tester, pour passer directement sur localhost
|
||||
curl -LksS $SOUS_DOMAIN/$CHECK_PATH -o url_output
|
||||
URL_TITLE=$(grep "<title>" url_output | cut -d '>' -f 2 | cut -d '<' -f1)
|
||||
ECHO_FORMAT "Titre de la page: $URL_TITLE\n" "white"
|
||||
|
@ -51,14 +53,12 @@ CHECK_URL () {
|
|||
grep "<body" -A 20 url_output | sed 1d | tee -a $RESULT
|
||||
echo -e "\e[0m"
|
||||
fi
|
||||
if [ "$no_lxc" -eq 0 ]; then
|
||||
sudo sed -i '/#package_check/d' /etc/hosts # Supprime la ligne dans le hosts
|
||||
fi
|
||||
sudo sed -i '/#package_check/d' /etc/hosts # Supprime la ligne dans le hosts
|
||||
}
|
||||
|
||||
CHECK_SETUP_SUBDIR () {
|
||||
# Test d'installation en sous-dossier
|
||||
ECHO_FORMAT "\n\n>> Installation en sous-dossier... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Installation en sous-dossier... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ -z "$MANIFEST_DOMAIN" ]; then
|
||||
echo "Clé de manifest pour 'domain' introuvable dans le fichier check_process. Impossible de procéder à ce test"
|
||||
|
@ -124,7 +124,7 @@ CHECK_SETUP_SUBDIR () {
|
|||
|
||||
CHECK_SETUP_ROOT () {
|
||||
# Test d'installation à la racine
|
||||
ECHO_FORMAT "\n\n>> Installation à la racine... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Installation à la racine... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ -z "$MANIFEST_DOMAIN" ]; then
|
||||
echo "Clé de manifest pour 'domain' introuvable dans le fichier check_process. Impossible de procéder à ce test"
|
||||
|
@ -149,9 +149,10 @@ CHECK_SETUP_ROOT () {
|
|||
# Installation de l'app
|
||||
SETUP_APP
|
||||
LOG_EXTRACTOR
|
||||
if [ "$install_pass" -gt 0 ]; then
|
||||
if [ "$install_pass" -gt 0 ]; then # Si install_pass>0, une installation a déjà été faite.
|
||||
tnote=$((tnote+1))
|
||||
else
|
||||
install_pass=1
|
||||
tnote=$((tnote+2))
|
||||
fi
|
||||
if [ "$YUNOHOST_RESULT" -eq 0 ]; then
|
||||
|
@ -178,12 +179,12 @@ CHECK_SETUP_ROOT () {
|
|||
if [ "$YUNOHOST_RESULT" -eq 0 ] # Si l'installation a été un succès. On teste la suppression
|
||||
then
|
||||
LOG_EXTRACTOR
|
||||
if [ "$install_pass" -eq 2 ]; then
|
||||
if [ "$install_pass" -eq 2 ]; then # Si install_pass=2, une suppression a déjà été faite.
|
||||
tnote=$((tnote+1))
|
||||
else
|
||||
install_pass=2
|
||||
tnote=$((tnote+2))
|
||||
fi
|
||||
install_pass=3
|
||||
if [ "$YUNOHOST_REMOVE" -eq 0 ]; then
|
||||
ECHO_FORMAT "--- SUCCESS ---\n" "lgreen" "bold"
|
||||
if [ "$GLOBAL_CHECK_REMOVE" -eq 0 ]; then
|
||||
|
@ -201,18 +202,18 @@ CHECK_SETUP_ROOT () {
|
|||
GLOBAL_CHECK_REMOVE_ROOT=-1 # Suppression à la racine échouée
|
||||
fi
|
||||
fi
|
||||
install_pass=$((install_pass+1))
|
||||
}
|
||||
|
||||
CHECK_SETUP_NO_URL () {
|
||||
# Test d'installation sans accès par url
|
||||
ECHO_FORMAT "\n\n>> Installation sans accès par url... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Installation sans accès par url... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
MANIFEST_ARGS_MOD=$MANIFEST_ARGS # Copie des arguments
|
||||
# Installation de l'app
|
||||
SETUP_APP
|
||||
LOG_EXTRACTOR
|
||||
if [ "$install_pass" -eq 0 ]; then
|
||||
if [ "$install_pass" -eq 0 ]; then # Si install_pass=0, aucune installation n'a été faite.
|
||||
install_pass=1
|
||||
tnote=$((tnote+1))
|
||||
fi
|
||||
if [ "$YUNOHOST_RESULT" -eq 0 ]; then
|
||||
|
@ -221,6 +222,7 @@ CHECK_SETUP_NO_URL () {
|
|||
note=$((note+1))
|
||||
fi
|
||||
GLOBAL_CHECK_SETUP=1 # Installation réussie
|
||||
GLOBAL_CHECK_SUB_DIR=1
|
||||
else
|
||||
ECHO_FORMAT "--- FAIL ---\n" "lred" "bold"
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
|
@ -232,7 +234,8 @@ CHECK_SETUP_NO_URL () {
|
|||
if [ "$YUNOHOST_RESULT" -eq 0 ] # Si l'installation a été un succès. On teste la suppression
|
||||
then
|
||||
LOG_EXTRACTOR
|
||||
if [ "$install_pass" -eq 1 ] || [ "$install_pass" -eq 3 ]; then
|
||||
if [ "$install_pass" -ne 2 ]; then # Si install_pass!=2, aucune suppression n'a été faite.
|
||||
install_pass=2
|
||||
tnote=$((tnote+1))
|
||||
fi
|
||||
if [ "$YUNOHOST_REMOVE" -eq 0 ]; then
|
||||
|
@ -253,7 +256,7 @@ CHECK_SETUP_NO_URL () {
|
|||
|
||||
CHECK_UPGRADE () {
|
||||
# Test d'upgrade
|
||||
ECHO_FORMAT "\n\n>> Upgrade... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Upgrade... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
echo "L'installation a échouée, impossible d'effectuer ce test..."
|
||||
|
@ -306,7 +309,7 @@ CHECK_UPGRADE () {
|
|||
|
||||
CHECK_BACKUP_RESTORE () {
|
||||
# Test de backup
|
||||
ECHO_FORMAT "\n\n>> Backup... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Backup/Restore... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
echo "L'installation a échouée, impossible d'effectuer ce test..."
|
||||
|
@ -379,10 +382,10 @@ CHECK_BACKUP_RESTORE () {
|
|||
CHECK_PUBLIC_PRIVATE () {
|
||||
# Test d'installation en public/privé
|
||||
if [ "$1" == "private" ]; then
|
||||
ECHO_FORMAT "\n\n>> Installation privée... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Installation privée... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
fi
|
||||
if [ "$1" == "public" ]; then
|
||||
ECHO_FORMAT "\n\n>> Installation publique... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Installation publique... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
fi
|
||||
cur_test=$((cur_test+1))
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
|
@ -464,7 +467,7 @@ CHECK_PUBLIC_PRIVATE () {
|
|||
|
||||
CHECK_MULTI_INSTANCE () {
|
||||
# Test d'installation en multi-instance
|
||||
ECHO_FORMAT "\n\n>> Installation multi-instance... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Installation multi-instance... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
echo "L'installation a échouée, impossible d'effectuer ce test..."
|
||||
|
@ -522,16 +525,16 @@ CHECK_MULTI_INSTANCE () {
|
|||
CHECK_COMMON_ERROR () {
|
||||
# Test d'erreur depuis le manifest
|
||||
if [ "$1" == "wrong_user" ]; then
|
||||
ECHO_FORMAT "\n\n>> Erreur d'utilisateur... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Erreur d'utilisateur... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
fi
|
||||
if [ "$1" == "wrong_path" ]; then
|
||||
ECHO_FORMAT "\n\n>> Erreur de domaine... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Erreur de domaine... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
fi
|
||||
if [ "$1" == "incorrect_path" ]; then
|
||||
ECHO_FORMAT "\n\n>> Path mal formé... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Path mal formé... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
fi
|
||||
if [ "$1" == "port_already_use" ]; then
|
||||
ECHO_FORMAT "\n\n>> Port déjà utilisé... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Port déjà utilisé... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
if [ -z "$MANIFEST_PORT" ]; then
|
||||
echo "Clé de manifest pour 'port' introuvable ou port non renseigné dans le fichier check_process. Impossible de procéder à ce test"
|
||||
return
|
||||
|
@ -639,7 +642,7 @@ CHECK_COMMON_ERROR () {
|
|||
|
||||
CHECK_CORRUPT () {
|
||||
# Test d'erreur sur source corrompue
|
||||
ECHO_FORMAT "\n\n>> Source corrompue après téléchargement... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Source corrompue après téléchargement... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
echo "L'installation a échouée, impossible d'effectuer ce test..."
|
||||
|
@ -649,7 +652,7 @@ echo -n "Non implémenté"
|
|||
}
|
||||
CHECK_DL () {
|
||||
# Test d'erreur de téléchargement de la source
|
||||
ECHO_FORMAT "\n\n>> Erreur de téléchargement de la source... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Erreur de téléchargement de la source... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
echo "L'installation a échouée, impossible d'effectuer ce test..."
|
||||
|
@ -659,7 +662,7 @@ echo -n "Non implémenté"
|
|||
}
|
||||
CHECK_FINALPATH () {
|
||||
# Test sur final path déjà utilisé.
|
||||
ECHO_FORMAT "\n\n>> Final path déjà utilisé... [Test $cur_test/$all_test]\n" "white" "bold"
|
||||
ECHO_FORMAT "\n\n>> Final path déjà utilisé... [Test $cur_test/$all_test]\n" "white" "bold" clog
|
||||
cur_test=$((cur_test+1))
|
||||
if [ "$GLOBAL_CHECK_SETUP" -ne 1 ]; then
|
||||
echo "L'installation a échouée, impossible d'effectuer ce test..."
|
||||
|
|
Loading…
Add table
Reference in a new issue