--- - name: installer les prérequis pour le dépôt PHP Sury ansible.builtin.apt: name: [lsb-release, ca-certificates, curl, gnupg, rsync] state: present update_cache: true cache_valid_time: 3600 - name: télécharger le trousseau de clés du dépôt Sury ansible.builtin.get_url: url: https://packages.sury.org/debsuryorg-archive-keyring.deb dest: /tmp/debsuryorg-archive-keyring.deb mode: "0644" - name: installer le trousseau de clés Sury ansible.builtin.apt: deb: /tmp/debsuryorg-archive-keyring.deb state: present - name: ajouter le dépôt PHP Sury ansible.builtin.apt_repository: repo: "deb [signed-by=/usr/share/keyrings/debsuryorg-archive-keyring.gpg] https://packages.sury.org/php/ {{ ansible_distribution_release }} main" filename: php state: present update_cache: true - name: installer PHP {{ portail_php_version }}, Nginx et les extensions nécessaires ansible.builtin.apt: name: - "php{{ portail_php_version }}-fpm" - "php{{ portail_php_version }}-cli" - "php{{ portail_php_version }}-mysql" - "php{{ portail_php_version }}-redis" - "php{{ portail_php_version }}-mbstring" - "php{{ portail_php_version }}-xml" - "php{{ portail_php_version }}-curl" - "php{{ portail_php_version }}-zip" - "php{{ portail_php_version }}-bcmath" - "php{{ portail_php_version }}-gd" - "php{{ portail_php_version }}-intl" - "php{{ portail_php_version }}-opcache" - nginx state: present update_cache: true - name: installer Composer (avec vérification de la somme d'installation officielle) block: - name: télécharger le programme d'installation de Composer ansible.builtin.get_url: url: https://getcomposer.org/installer dest: /tmp/composer-setup.php mode: "0644" - name: récupérer la somme SHA384 officielle ansible.builtin.uri: url: https://composer.github.io/installer.sig return_content: true register: portail_composer_signature when: not (ansible_check_mode | default(false)) - name: calculer la somme SHA384 du fichier téléchargé ansible.builtin.stat: path: /tmp/composer-setup.php checksum_algorithm: sha384 register: portail_composer_setup_stat - name: vérifier que la somme correspond (sinon, installateur corrompu) ansible.builtin.fail: msg: "La somme de l'installateur Composer ne correspond pas à la signature officielle : installation interrompue." when: - portail_composer_signature is defined - portail_composer_setup_stat.stat.checksum != portail_composer_signature.content.strip() - name: installer Composer (dernière version stable) ansible.builtin.command: cmd: php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer args: creates: /usr/local/bin/composer - name: installer Node.js 22 LTS (dépôt NodeSource) block: - name: ajouter le dépôt NodeSource ansible.builtin.shell: cmd: curl -fsSL https://deb.nodesource.com/setup_22.x | bash - creates: /etc/apt/sources.list.d/nodesource.list - name: installer nodejs ansible.builtin.apt: name: nodejs state: present update_cache: true