#!/bin/bash # Définition des couleurs pour une meilleure lisibilité GREEN='\033[0;32m' RED='\033[0;31m' NC='\033[0m' # No Color # Définition du mot de passe sudo SUDO_PASSWORD="12345" # Liste des playbooks à exécuter #TODO: Supprimer "playbooks/dev/3_1_keycloak_dev.yml" PLAYBOOKS=( "playbooks/1_docker.yml" "playbooks/2_portainer.yml" "playbooks/3_keycloak.yml" "playbooks/dev/3_1_keycloak_dev.yml" "playbooks/4_mysql.yml" "playbooks/5_nextcloud.yml" "playbooks/6_postgresql.yml" "playbooks/0_front.yml" ) # Fonction pour exécuter un playbook run_playbook() { echo -e "${GREEN}Exécution du playbook: $1${NC}" if ANSIBLE_BECOME_PASS="$SUDO_PASSWORD" ansible-playbook "$1"; then echo -e "${GREEN}✓ Playbook $1 exécuté avec succès${NC}" return 0 else echo -e "${RED}✗ Erreur lors de l'exécution du playbook $1${NC}" return 1 fi } # Vérifier si Ansible est installé if ! command -v ansible-playbook &> /dev/null; then echo -e "${RED}Erreur: ansible-playbook n'est pas installé${NC}" exit 1 fi # Exécuter chaque playbook for playbook in "${PLAYBOOKS[@]}"; do if [ ! -f "$playbook" ]; then echo -e "${RED}Erreur: Le playbook $playbook n'existe pas${NC}" exit 1 fi if ! run_playbook "$playbook"; then echo -e "${RED}Arrêt de l'exécution suite à une erreur${NC}" exit 1 fi done echo -e "${GREEN}Tous les playbooks ont été exécutés avec succès${NC}"