Files
php/tasks/fpm_pools.yml

102 lines
3.5 KiB
YAML

---
- name: php | create php log directories for pools
file:
path: "/var/log/php/{{ item.1.version }}/{{ item.0.name }}"
state: directory
owner: "{{ item.0.user | default('www-data') }}"
group: "{{ item.0.group | default('www-data') }}"
mode: '0755'
recurse: yes
loop: "{{ php_pools | subelements('php_versions') }}"
when: php_pools is defined and php_pools | length > 0
- name: php | create php-fpm pool configurations
template:
src: pool.conf.j2
dest: "/etc/php/{{ item.1.version }}/fpm/pool.d/{{ item.0.name }}.conf"
owner: root
group: root
mode: '0644'
backup: yes
loop: "{{ php_pools | subelements('php_versions') }}"
when: php_pools is defined and php_pools | length > 0
notify:
- restart php-fpm services
- name: php | ensure custom slowlog directory exists (if overridden)
file:
path: "{{ (item.0.slowlog_path | default('/var/log/php/' ~ item.1.version ~ '/' ~ item.0.name ~ '/php-slow.log')) | dirname }}"
state: directory
owner: "{{ item.0.user | default('www-data') }}"
group: "{{ item.0.group | default('www-data') }}"
mode: '0755'
recurse: yes
loop: "{{ php_pools | subelements('php_versions') }}"
when:
- php_pools is defined and php_pools | length > 0
- item.0.slowlog_path is not sameas(false)
- name: php | ensure custom error_log directory exists (if overridden)
file:
path: "{{ (item.0.error_log_path | default('/var/log/php/' ~ item.1.version ~ '/' ~ item.0.name ~ '/php-errors.log')) | dirname }}"
state: directory
owner: "{{ item.0.user | default('www-data') }}"
group: "{{ item.0.group | default('www-data') }}"
mode: '0755'
recurse: yes
loop: "{{ php_pools | subelements('php_versions') }}"
when:
- php_pools is defined and php_pools | length > 0
- item.0.error_log_path is not sameas(false)
- name: php | ensure error_log file exists with proper ownership
file:
path: "{{ item.0.error_log_path | default('/var/log/php/' ~ item.1.version ~ '/' ~ item.0.name ~ '/php-errors.log') }}"
state: touch
owner: "{{ item.0.user | default('www-data') }}"
group: "{{ item.0.group | default('www-data') }}"
mode: '0640'
loop: "{{ php_pools | subelements('php_versions') }}"
when:
- php_pools is defined and php_pools | length > 0
- item.0.error_log_path is not sameas(false)
- name: php | ensure slowlog file exists with proper ownership
file:
path: "{{ item.0.slowlog_path | default('/var/log/php/' ~ item.1.version ~ '/' ~ item.0.name ~ '/php-slow.log') }}"
state: touch
owner: "{{ item.0.user | default('www-data') }}"
group: "{{ item.0.group | default('www-data') }}"
mode: '0640'
loop: "{{ php_pools | subelements('php_versions') }}"
when:
- php_pools is defined and php_pools | length > 0
- item.0.slowlog_path is not sameas(false)
- name: php | remove default www pool if requested
file:
path: "/etc/php/{{ item.version }}/fpm/pool.d/www.conf"
state: absent
loop: "{{ php_versions }}"
when:
- php_remove_default_pool is defined
- php_remove_default_pool | bool
notify:
- restart php-fpm services
- name: php | check if logrotate is installed
package_facts:
manager: "auto"
- name: php | create logrotate configuration for php-fpm logs
template:
src: php-fpm.logrotate.j2
dest: "/etc/logrotate.d/php-fpm"
owner: root
group: root
mode: '0644'
when:
- php_logrotate_enabled | default(true) | bool
- "'logrotate' in ansible_facts.packages"
- php_pools is defined and php_pools | length > 0