69 lines
1.9 KiB
YAML
69 lines
1.9 KiB
YAML
---
|
|
|
|
- name: INCLUDE_VARS | Related to OS family
|
|
include_vars: "OS_Family_{{ ansible_os_family }}.yml"
|
|
|
|
- name: INCLUDE_VARS | Related to OS version
|
|
include_vars: "{{ item }}"
|
|
with_first_found:
|
|
- "{{ ansible_distribution }}-{{ ansible_distribution_release }}.yml"
|
|
- "{{ ansible_distribution }}-{{ ansible_distribution_version }}.yml"
|
|
- "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml"
|
|
|
|
- name: APT | Install PHP packages
|
|
apt:
|
|
pkg: "{{ item }}"
|
|
state: present
|
|
update_cache: yes
|
|
cache_valid_time: 3600
|
|
loop: "{{ php_packages + php_extra_packages | flatten }}"
|
|
notify: restart php-fpm
|
|
when: ansible_os_family == 'Debian'
|
|
|
|
- name: PKGNG | Install PHP packages
|
|
pkgng:
|
|
name: "{{ item }}"
|
|
loop: "{{ php_packages + php_extra_packages | flatten }}"
|
|
notify: restart php-fpm
|
|
when: ansible_os_family == 'FreeBSD'
|
|
|
|
- name: IMPORT_TASKS | PHP-FPM
|
|
import_tasks: fpm.yml
|
|
|
|
- name: LINEINFILE | PHP CLI configuration
|
|
lineinfile:
|
|
dest: '{{ php_cli_ini }}'
|
|
regexp: '^;?{{ item.key }}'
|
|
line: '{{ item.key }} = {{ item.value }}'
|
|
loop: "{{ php_ini | combine(php_ini_cli) | dict2items }}"
|
|
|
|
- name: IMPORT_TASKS | Xdebug
|
|
import_tasks: xdebug.yml
|
|
|
|
- name: APT | Install and configure opcache
|
|
import_tasks: opcache.yml
|
|
|
|
- name: SERVICE | Ensure PHP-FPM is started
|
|
service:
|
|
name: '{{ php_fpm_service }}'
|
|
state: started
|
|
when: php_install_fpm and ansible_virtualization_type != 'docker'
|
|
|
|
- block:
|
|
|
|
- name: COMMAND | Check if PHP-FPM is started (Docker)
|
|
command: 'service {{ php_fpm_service }} status'
|
|
args:
|
|
warn: false
|
|
register: dps
|
|
changed_when: false
|
|
failed_when: false
|
|
|
|
- name: COMMAND | Ensure PHP-FPM is started (Docker)
|
|
command: 'service {{ php_fpm_service }} start'
|
|
args:
|
|
warn: false
|
|
when: dps.stdout.find('is not running') != -1
|
|
|
|
when: php_install_fpm and ansible_virtualization_type == 'docker'
|