91 lines
3.3 KiB
YAML
91 lines
3.3 KiB
YAML
---
|
|
- 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
|