Files
e-cosplay/ansible/deploy.yml

58 lines
2.9 KiB
YAML
Raw Normal View History

2025-07-16 13:43:52 +02:00
# Fichier: install_php_83_symfony_pgsql.yml
- name: Deploy application
hosts: webservers # Cible les hôtes définis dans le groupe 'webservers' de votre inventaire
become: true # Nécessite des privilèges root pour exécuter les tâches
gather_facts: true # Utile pour obtenir des informations sur le système, comme l'OS
# Il est recommandé de définir les variables sensibles comme les mots de passe
# dans un fichier vault chiffré (ansible-vault).
vars:
db_name: "e-cosplay-contest"
db_user: "e-cosplay-contest"
db_password: "e-cosplay-contest"
redis_password: "ecosplaycontest"
redis_port: "17800"
tasks:
- name: Installer le support ACL pour corriger les permissions de 'become_user'
# Le paquet 'acl' est nécessaire pour qu'Ansible puisse définir des permissions
# granulaires sur les fichiers temporaires lorsqu'il passe à un utilisateur non-root.
ansible.builtin.apt:
name: acl
state: present
update_cache: true
when: ansible_os_family == "Debian"
- name: Installation des dépendances pour le module Ansible PostgreSQL
ansible.builtin.apt:
name: python3-psycopg2
state: present
update_cache: true
when: ansible_os_family == "Debian"
- name: Installation de PHP 8.3 et PHP 8.3-FPM avec les dépendances
# Installe PHP 8.3, PHP-FPM et toutes les extensions nécessaires pour Symfony,
# ainsi que le support Redis, Imagemagick, FFmpeg et PostgreSQL.
ansible.builtin.apt:
name:
- php8.3
- php8.3-fpm
- php8.3-cli
- php8.3-common
- php8.3-mysql # Driver MySQL/MariaDB
- php8.3-pgsql # Support pour PostgreSQL
- php8.3-xml # Pour XML, SOAP, etc.
- php8.3-mbstring # Pour la manipulation de chaînes de caractères multi-octets
- php8.3-zip # Pour la manipulation des archives ZIP
- php8.3-intl # Pour l'internationalisation
- php8.3-gd # Pour la manipulation d'images (GD Library)
- php8.3-curl # Pour faire des requêtes HTTP
- php8.3-pdo # Pour les connexions à la base de données via PDO
- php8.3-opcache # Pour l'optimisation des performances de PHP
- php8.3-bcmath # Pour les fonctions mathématiques de précision arbitraire
- php8.3-redis # Support pour la base de données en mémoire Redis
- php8.3-imagick # Pour la manipulation d'images via ImageMagick
- ffmpeg # Outil en ligne de commande pour la manipulation audio/vidéo
state: present
when: ansible_os_family == "Debian"