25 lines
1.1 KiB
Bash
Executable File
25 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Demande à l'utilisateur l'adresse IP, le hostname et le mot de passe pour l'utilisateur "smauro"
|
|
read -p "Entrez l'adresse IP de la machine cible : " target_ip
|
|
read -p "Entrez le nouveau hostname : " ansible_hostname
|
|
read -p "Entrez le mot de passe pour l'utilisateur smauro : " smauro_password
|
|
|
|
# Vérification que l'IP, le hostname et le mot de passe ne sont pas vides
|
|
if [[ -z "$target_ip" || -z "$ansible_hostname" || -z "$smauro_password" ]]; then
|
|
echo "Erreur : L'adresse IP, le hostname et le mot de passe ne peuvent pas être vides."
|
|
exit 1
|
|
fi
|
|
|
|
# Créer un fichier d'inventaire dynamique
|
|
inventory_file="dynamic_inventory.ini"
|
|
echo "[server_web]" > $inventory_file
|
|
echo "$target_ip ansible_user=root ansible_ssh_pass=testtest" >> $inventory_file
|
|
|
|
# Exécution du playbook avec les variables dynamiques
|
|
ansible-playbook -i "$inventory_file" -u root --ask-become-pass playbooks/debian_fullserver_web.yml -e "ansible_hostname=\"$ansible_hostname\" user_password=\"$smauro_password\""
|
|
|
|
# Supprimer le fichier d'inventaire dynamique après utilisation
|
|
rm -f $inventory_file
|
|
|