diff --git a/reinitialisation_salle.sh b/reinitialisation_salle.sh index edda782..6515f20 100755 --- a/reinitialisation_salle.sh +++ b/reinitialisation_salle.sh @@ -1,45 +1,39 @@ #!/bin/bash - -# Charger les variables du .env +#Charger les variables du fichier .env if [ -f .env ]; then export $(grep -v '^#' .env | xargs) fi -#================================================================================ - -#Question posée à l'utilisateur pour la confirmation d'execution du script -#La commande pouvant être assez assez intrusive, il est préférable de mettre non par défaut - -read -e -p "Attention vous allez réinitialiser complétement la salle, voullez vous vraiment continuer [o/n] : " -i "n" confirmation - +#Confirmation de l'utilisateur +read -e -p "⚠️ Attention vous allez réinitialiser complètement la salle, voulez-vous vraiment continuer [o/n] : " -i "n" confirmation echo "Vous avez entré ${confirmation}" - -#Si l'utilisateur entre oui, le script s'exécute -if [ $confirmation == 'o' ]; -then +if [ "$confirmation" == "o" ]; then echo "Lancement de la tâche de réinitialisation de la salle" - - #curl -H "fog-api-token: ${FOG_API_TOKEN}" -H "fog-user-token: ${FOG_USER_TOKEN}" -H "Content-Type: application/json" -X GET http://localhost/fog/group | jq - - - #Variables de configuration de la tâche + #Configuration GROUP_ID="1" IMAGE_ID="1" - TASK_TYPE="1" #Déploiement multicast - SHUTDOWN="1" #Eteindre les machines à la fin + TASK_TYPE="1" # Multicast + SHUTDOWN="1" # Éteindre à la fin + #Récupération des MAC des PCs + MACS=$(curl -s -H "fog-api-token: $FOG_API_TOKEN" -H "fog-user-token: $FOG_USER_TOKEN" \ + http://localhost/fog/host | jq -r '.hosts[].macs[]') - #Wake On LAN sur le groupe - echo "Envoi du Wake On LAN vers le groupe ${GROUP_ID}" - curl -H "fog-api-token: ${FOG_API_TOKEN}" -H "fog-user-token: ${FOG_USER_TOKEN}" -X POST http://localhost/fog/group/${GROUP_ID}/wol + #Envoi du WOL à chaque MAC + echo "Révéil des machines" + for MAC in $MACS; do + #echo "💡 Envoi WOL à $MAC" + wakeonlan "$MAC" + done + -#Construction du JSON avec les paramètres de la tâche -DATA=$(cat <