--- - name: Installer et configurer MySQL hosts: servers become: true gather_facts: true vars: git_repo: "https://gite.slm-lab.net/Chabdeltsang/Neah-Enkun.git" git_dest: "/opt/Neah-Enkun" git_branch: "master" mysql_container: "neah-mysql" mysql_root_password: "36fe52ed4402730b8ef12d1bbd259862f710e14f147386caaaee74720d5d3cbb" mysql_database: "nextcloud" mysql_user: "enkun" pre_tasks: - name: Cloner le dépôt Git git: repo: "{{ git_repo }}" dest: "{{ git_dest }}" version: "{{ git_branch }}" update: true force: true register: git_status until: git_status is success retries: 3 delay: 5 tasks: - name: Lancer le service MySQL command: "docker compose up -d --build --remove-orphans mysql" args: chdir: "{{ git_dest }}" register: mysql_launch until: mysql_launch is success retries: 3 delay: 5 - name: Créer la base de données Nextcloud shell: > docker exec {{ mysql_container }} mysql -u root -p{{ mysql_root_password }} -e "CREATE DATABASE IF NOT EXISTS {{ mysql_database }} CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;" register: create_db until: create_db is success retries: 3 delay: 5 - name: Créer l'utilisateur MySQL shell: > docker exec {{ mysql_container }} mysql -u root -p{{ mysql_root_password }} -e "CREATE USER IF NOT EXISTS '{{ mysql_user }}'@'%' IDENTIFIED BY '{{ mysql_root_password }}';" register: create_user until: create_user is success retries: 3 delay: 5 - name: Ajouter les droits à l'utilisateur sur la base de données shell: > docker exec {{ mysql_container }} mysql -u root -p{{ mysql_root_password }} -e "GRANT ALL PRIVILEGES ON {{ mysql_database }}.* TO '{{ mysql_user }}'@'%'; FLUSH PRIVILEGES;" register: grant_privileges until: grant_privileges is success retries: 3 delay: 5