Mass cleanup and drop jessie support
parent
8e53b9cd80
commit
5878040e84
12
.travis.yml
12
.travis.yml
|
@ -1,22 +1,10 @@
|
||||||
env:
|
env:
|
||||||
- PLATFORM='docker-debian-jessie-php56' ANSIBLE_VERSION='ansible>=2.0,<2.1'
|
|
||||||
- PLATFORM='docker-debian-jessie-php70' ANSIBLE_VERSION='ansible>=2.0,<2.1'
|
|
||||||
- PLATFORM='docker-debian-jessie-php71' ANSIBLE_VERSION='ansible>=2.0,<2.1'
|
|
||||||
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.0,<2.1'
|
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.0,<2.1'
|
||||||
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.0,<2.1'
|
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.0,<2.1'
|
||||||
- PLATFORM='docker-debian-jessie-php56' ANSIBLE_VERSION='ansible>=2.1,<2.2'
|
|
||||||
- PLATFORM='docker-debian-jessie-php70' ANSIBLE_VERSION='ansible>=2.1,<2.2'
|
|
||||||
- PLATFORM='docker-debian-jessie-php71' ANSIBLE_VERSION='ansible>=2.1,<2.2'
|
|
||||||
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.1,<2.2'
|
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.1,<2.2'
|
||||||
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.1,<2.2'
|
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.1,<2.2'
|
||||||
- PLATFORM='docker-debian-jessie-php56' ANSIBLE_VERSION='ansible>=2.2,<2.3'
|
|
||||||
- PLATFORM='docker-debian-jessie-php70' ANSIBLE_VERSION='ansible>=2.2,<2.3'
|
|
||||||
- PLATFORM='docker-debian-jessie-php71' ANSIBLE_VERSION='ansible>=2.2,<2.3'
|
|
||||||
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.2,<2.3'
|
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.2,<2.3'
|
||||||
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.2,<2.3'
|
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.2,<2.3'
|
||||||
- PLATFORM='docker-debian-jessie-php56' ANSIBLE_VERSION='ansible>=2.3,<2.4'
|
|
||||||
- PLATFORM='docker-debian-jessie-php70' ANSIBLE_VERSION='ansible>=2.3,<2.4'
|
|
||||||
- PLATFORM='docker-debian-jessie-php71' ANSIBLE_VERSION='ansible>=2.3,<2.4'
|
|
||||||
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.3,<2.4'
|
- PLATFORM='docker-debian-stretch-php70' ANSIBLE_VERSION='ansible>=2.3,<2.4'
|
||||||
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.3,<2.4'
|
- PLATFORM='docker-debian-stretch-php71' ANSIBLE_VERSION='ansible>=2.3,<2.4'
|
||||||
|
|
||||||
|
|
20
README.md
20
README.md
|
@ -8,10 +8,9 @@ Install PHP (php-fpm optional) on Debian. Manage APCu, Opcache, Xdebug.
|
||||||
Managed OS / Versions
|
Managed OS / Versions
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
| OS | PHP 5.6 | PHP 7.0 | PHP 7.1 | PHP 7.2 |
|
| OS | PHP 7.0 | PHP 7.1 | PHP 7.2 |
|
||||||
|:-------------:|:---------:|:-------------------------:|:---------------------:|:------------:|
|
|:-------------:|:------------:|:-------------:|:------------:|
|
||||||
| Debian Jessie | Yes | Yes (from Dotdeb or Sury) | Yes (Dotdeb or Sury) | Yes (Sury) |
|
| Debian Strech | Yes | Yes (Sury) | Yes (Sury) |
|
||||||
| Debian Strech | No | Yes | Yes (Sury) | Yes (Sury) |
|
|
||||||
|
|
||||||
Links:
|
Links:
|
||||||
- [Dotdeb](https://www.dotdeb.org)
|
- [Dotdeb](https://www.dotdeb.org)
|
||||||
|
@ -29,7 +28,7 @@ You should look at [default vars](defaults/main.yml).
|
||||||
|
|
||||||
### Writable vars
|
### Writable vars
|
||||||
|
|
||||||
- `php_version`: 5.6 (default), 7.0, 7.1
|
- `php_version`: 7.0 (default on Stretch), 7.1, 7.2
|
||||||
- `php_install_fpm`: boolean, install and manage php-fpm (default is true)
|
- `php_install_fpm`: boolean, install and manage php-fpm (default is true)
|
||||||
- `php_install_xdebug`: boolean, install [Xdebug](http://xdebug.org)
|
- `php_install_xdebug`: boolean, install [Xdebug](http://xdebug.org)
|
||||||
- `php_extra_packages`: additional php packages to install (default is an empty list).
|
- `php_extra_packages`: additional php packages to install (default is an empty list).
|
||||||
|
@ -151,12 +150,12 @@ Example Playbook
|
||||||
roles:
|
roles:
|
||||||
- { role: HanXHX.php }
|
- { role: HanXHX.php }
|
||||||
|
|
||||||
### Debian Jessie with PHP 7.0 CLI (no FPM)
|
### Debian Jessie with PHP 7.2 CLI (no FPM)
|
||||||
|
|
||||||
- hosts: jessie-servers
|
- hosts: servers
|
||||||
roles:
|
roles:
|
||||||
- { role: HanXHX.dotdeb }
|
- { role: HanXHX.sury }
|
||||||
- { role: HanXHX.php, php_version: '7.0', php_install_fpm: false }
|
- { role: HanXHX.php, php_version: '7.2', php_install_fpm: false }
|
||||||
|
|
||||||
License
|
License
|
||||||
-------
|
-------
|
||||||
|
@ -169,7 +168,7 @@ Donation
|
||||||
If this code helped you, or if you’ve used them for your projects, feel free to buy me some :beers:
|
If this code helped you, or if you’ve used them for your projects, feel free to buy me some :beers:
|
||||||
|
|
||||||
- Bitcoin: `1BQwhBeszzWbUTyK4aUyq3SRg7rBSHcEQn`
|
- Bitcoin: `1BQwhBeszzWbUTyK4aUyq3SRg7rBSHcEQn`
|
||||||
- Ethereum: `63abe6b2648fd892816d87a31e3d9d4365a737b5`
|
- Ethereum: `0x63abe6b2648fd892816d87a31e3d9d4365a737b5`
|
||||||
- Litecoin: `LeNDw34zQLX84VvhCGADNvHMEgb5QyFXyD`
|
- Litecoin: `LeNDw34zQLX84VvhCGADNvHMEgb5QyFXyD`
|
||||||
- Monero: `45wbf7VdQAZS5EWUrPhen7Wo4hy7Pa7c7ZBdaWQSRowtd3CZ5vpVw5nTPphTuqVQrnYZC72FXDYyfP31uJmfSQ6qRXFy3bQ`
|
- Monero: `45wbf7VdQAZS5EWUrPhen7Wo4hy7Pa7c7ZBdaWQSRowtd3CZ5vpVw5nTPphTuqVQrnYZC72FXDYyfP31uJmfSQ6qRXFy3bQ`
|
||||||
|
|
||||||
|
@ -179,4 +178,3 @@ Author Information
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
- Twitter: [@hanxhx_](https://twitter.com/hanxhx_)
|
- Twitter: [@hanxhx_](https://twitter.com/hanxhx_)
|
||||||
- All issues, pull-requests are welcome :)
|
|
||||||
|
|
|
@ -6,19 +6,15 @@
|
||||||
Vagrant.configure("2") do |config|
|
Vagrant.configure("2") do |config|
|
||||||
|
|
||||||
vms_debian = [
|
vms_debian = [
|
||||||
{ :name => "debian-jessie-php56", :box => "debian/jessie64", :vars => { }},
|
|
||||||
{ :name => "debian-jessie-php70", :box => "debian/jessie64", :vars => { "php_version": '7.0' }},
|
|
||||||
{ :name => "debian-jessie-php71", :box => "debian/jessie64", :vars => { "php_version": '7.1' }},
|
|
||||||
{ :name => "debian-stretch-php70", :box => "debian/stretch64", :vars => { }},
|
{ :name => "debian-stretch-php70", :box => "debian/stretch64", :vars => { }},
|
||||||
{ :name => "debian-stretch-php71", :box => "debian/stretch64", :vars => { "php_version": '7.1' }}
|
{ :name => "debian-stretch-php71", :box => "debian/stretch64", :vars => { "php_version": '7.1' }},
|
||||||
|
{ :name => "debian-stretch-php72", :box => "debian/stretch64", :vars => { "php_version": '7.2' }}
|
||||||
]
|
]
|
||||||
|
|
||||||
conts = [
|
conts = [
|
||||||
{ :name => "docker-debian-jessie-php56", :docker => "hanxhx/vagrant-ansible:debian8", :vars => { }},
|
|
||||||
{ :name => "docker-debian-jessie-php70", :docker => "hanxhx/vagrant-ansible:debian8", :vars => { "php_version": '7.0' }},
|
|
||||||
{ :name => "docker-debian-jessie-php71", :docker => "hanxhx/vagrant-ansible:debian8", :vars => { "php_version": '7.1' }},
|
|
||||||
{ :name => "docker-debian-stretch-php70", :docker => "hanxhx/vagrant-ansible:debian9", :vars => { }},
|
{ :name => "docker-debian-stretch-php70", :docker => "hanxhx/vagrant-ansible:debian9", :vars => { }},
|
||||||
{ :name => "docker-debian-stretch-php71", :docker => "hanxhx/vagrant-ansible:debian9", :vars => { "php_version": '7.1' }}
|
{ :name => "docker-debian-stretch-php71", :docker => "hanxhx/vagrant-ansible:debian9", :vars => { "php_version": '7.1' }},
|
||||||
|
{ :name => "docker-debian-stretch-php72", :docker => "hanxhx/vagrant-ansible:debian9", :vars => { "php_version": '7.2' }}
|
||||||
]
|
]
|
||||||
|
|
||||||
config.vm.network "private_network", type: "dhcp"
|
config.vm.network "private_network", type: "dhcp"
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
---
|
---
|
||||||
|
|
||||||
- name: restart php-fpm
|
- name: restart php-fpm
|
||||||
service: name='{{ php_fpm_service }}' state=restarted
|
service:
|
||||||
|
name: '{{ php_fpm_service }}'
|
||||||
|
state: restarted
|
||||||
when: php_install_fpm
|
when: php_install_fpm
|
||||||
|
|
|
@ -1,20 +1,19 @@
|
||||||
---
|
---
|
||||||
galaxy_info:
|
galaxy_info:
|
||||||
author: Emilien Mantel
|
author: Emilien Mantel
|
||||||
description: Install and configure PHP 5.6/7.0/7.1 (+ FPM is wanted)
|
description: Install and configure PHP 7.0/7.1/7.2 (+ FPM is wanted)
|
||||||
company:
|
company:
|
||||||
license: GPLv2
|
license: GPLv2
|
||||||
min_ansible_version: 2.0
|
min_ansible_version: 2.0
|
||||||
platforms:
|
platforms:
|
||||||
- name: Debian
|
- name: Debian
|
||||||
versions:
|
versions:
|
||||||
- jessie
|
- stretch
|
||||||
galaxy_tags:
|
galaxy_tags:
|
||||||
- development
|
- development
|
||||||
- web
|
- web
|
||||||
- php
|
- php
|
||||||
- php5.6
|
- php-fpm
|
||||||
- php5
|
|
||||||
- php7
|
- php7
|
||||||
- debian
|
- debian
|
||||||
dependencies: []
|
dependencies: []
|
||||||
|
|
|
@ -1,19 +1,20 @@
|
||||||
---
|
---
|
||||||
|
|
||||||
- name: APT | Install PHP-FPM
|
- name: APT | Install PHP-FPM
|
||||||
apt: pkg={{ php_fpm_service }} state=present
|
apt:
|
||||||
|
pkg: "{{ php_fpm_service }}"
|
||||||
|
|
||||||
- name: LINEINFILE | PHP configuration
|
- name: LINEINFILE | PHP configuration
|
||||||
lineinfile:
|
lineinfile:
|
||||||
dest: '{{ php_etc_dir }}/fpm/php.ini'
|
dest: '{{ php_cli_ini }}'
|
||||||
regexp: '^;?{{ item.key }}'
|
regexp: '^;?{{ item.key }}'
|
||||||
line: '{{ item.key }} = {{ item.value }}'
|
line: '{{ item.key }} = {{ item.value }}'
|
||||||
with_dict: "{{ php_ini | combine(php_ini_fpm) }}"
|
with_dict: "{{ php_ini | combine(php_ini_fpm) }}"
|
||||||
notify: restart php-fpm
|
notify: restart php-fpm
|
||||||
|
|
||||||
- name: TEMPLATE | Deploy pool configuration
|
- name: TEMPLATE | Deploy pool configuration
|
||||||
template: >
|
template:
|
||||||
src=etc/__php__/fpm/pool.d/pool.conf.j2
|
src: etc/__php__/fpm/pool.d/pool.conf.j2
|
||||||
dest='{{ php_etc_dir }}/fpm/pool.d/{{ item.pool_name }}.conf'
|
dest: '{{ php_fpm_pool_dir }}/{{ item.pool_name }}.conf'
|
||||||
with_items: "{{ php_fpm_poold }}"
|
with_items: "{{ php_fpm_poold }}"
|
||||||
notify: restart php-fpm
|
notify: restart php-fpm
|
||||||
|
|
|
@ -1,21 +1,17 @@
|
||||||
---
|
---
|
||||||
|
|
||||||
- name: INCLUDE_VARS | Related to OS
|
- name: INCLUDE_VARS | Related to OS family
|
||||||
|
include_vars: "OS_Family_{{ ansible_os_family }}.yml"
|
||||||
|
|
||||||
|
- name: INCLUDE_VARS | Related to OS version
|
||||||
include_vars: "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml"
|
include_vars: "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml"
|
||||||
|
|
||||||
- name: ASSERT | Check variables
|
|
||||||
assert:
|
|
||||||
that: "php_version in php_managed_versions"
|
|
||||||
|
|
||||||
- name: INCLUDE_VARS | Related to PHP version
|
|
||||||
include_vars: "php-{{ php_version }}.yml"
|
|
||||||
|
|
||||||
- name: APT | Update cache
|
|
||||||
apt: update_cache=yes cache_valid_time=3600
|
|
||||||
changed_when: false
|
|
||||||
|
|
||||||
- name: APT | Install PHP packages
|
- name: APT | Install PHP packages
|
||||||
apt: pkg={{ item }} state=present
|
apt:
|
||||||
|
pkg: "{{ item }}"
|
||||||
|
state: present
|
||||||
|
update_cache: yes
|
||||||
|
cache_valid_time: 3600
|
||||||
with_flattened:
|
with_flattened:
|
||||||
- "{{ php_packages }}"
|
- "{{ php_packages }}"
|
||||||
- "{{ php_extra_packages }}"
|
- "{{ php_extra_packages }}"
|
||||||
|
@ -27,7 +23,7 @@
|
||||||
|
|
||||||
- name: LINEINFILE | PHP configuration
|
- name: LINEINFILE | PHP configuration
|
||||||
lineinfile:
|
lineinfile:
|
||||||
dest: '{{ php_etc_dir }}/cli/php.ini'
|
dest: '{{ php_cli_ini }}'
|
||||||
regexp: '^;?{{ item.key }}'
|
regexp: '^;?{{ item.key }}'
|
||||||
line: '{{ item.key }} = {{ item.value }}'
|
line: '{{ item.key }} = {{ item.value }}'
|
||||||
with_dict: "{{ php_ini_cli }}"
|
with_dict: "{{ php_ini_cli }}"
|
||||||
|
|
|
@ -1,20 +1,21 @@
|
||||||
---
|
---
|
||||||
|
|
||||||
- name: APT | Install APCu
|
- name: APT | Install APCu
|
||||||
apt: pkg="{{ php_apt_prefix }}apcu" state=present
|
apt:
|
||||||
|
pkg: "{{ php_package_prefix }}apcu"
|
||||||
|
|
||||||
- name: APT | Install Opcache
|
- name: APT | Install Opcache
|
||||||
apt: pkg="{{ php_apt_prefix }}opcache" state=present
|
apt:
|
||||||
when: php_version | version_compare('7.0', 'ge')
|
pkg: "{{ php_package_prefix }}opcache"
|
||||||
|
|
||||||
- name: TEMPLATE | Configure APCu
|
- name: TEMPLATE | Configure Opcache
|
||||||
template: >
|
template:
|
||||||
src=etc/__php__/mods-available/opcache.ini.j2
|
src: "etc/__php__/mods-available/opcache.ini.j2"
|
||||||
dest="{{ php_mods_dir }}/opcache.ini"
|
dest: "{{ php_mods_dir }}/opcache.ini"
|
||||||
notify: restart php-fpm
|
notify: restart php-fpm
|
||||||
|
|
||||||
- name: TEMPLATE | Configure APCu
|
- name: TEMPLATE | Configure APCu
|
||||||
template: >
|
template:
|
||||||
src=etc/__php__/mods-available/apcu.ini.j2
|
src: "etc/__php__/mods-available/apcu.ini.j2"
|
||||||
dest={{ php_mods_dir }}/apcu.ini
|
dest: "{{ php_mods_dir }}/apcu.ini"
|
||||||
notify: restart php-fpm
|
notify: restart php-fpm
|
||||||
|
|
|
@ -4,16 +4,11 @@
|
||||||
|
|
||||||
- name: APT | Install php-xdebug
|
- name: APT | Install php-xdebug
|
||||||
apt:
|
apt:
|
||||||
pkg: "{{ php_apt_prefix }}xdebug"
|
pkg: "{{ php_package_prefix }}xdebug"
|
||||||
state: present
|
state: present
|
||||||
update_cache: yes
|
update_cache: yes
|
||||||
cache_valid_time: 3600
|
cache_valid_time: 3600
|
||||||
|
|
||||||
- name: SHELL | Get Xdebug version
|
|
||||||
shell: dpkg -l | awk '$2 ~ /xdebug$/ { print $3 }'
|
|
||||||
changed_when: false
|
|
||||||
register: xdebug_version
|
|
||||||
|
|
||||||
- name: TEMPLATE | Deploy module configurations
|
- name: TEMPLATE | Deploy module configurations
|
||||||
template:
|
template:
|
||||||
src: "etc/__php__/mods-available/xdebug.ini.j2"
|
src: "etc/__php__/mods-available/xdebug.ini.j2"
|
||||||
|
@ -24,15 +19,8 @@
|
||||||
|
|
||||||
when: php_install_xdebug
|
when: php_install_xdebug
|
||||||
|
|
||||||
- block:
|
- name: APT | Uninstall php-xdebug
|
||||||
|
apt:
|
||||||
# We can't uninstall as simple way. We can uninstall with php7.0-xdebug (virtual package), but removing virtual package doesn't affect real package.
|
pkg: "{{ php_package_prefix }}xdebug"
|
||||||
# On Jessie: php5-xdebug, php-xdebug (sury for PHP 5.6/7.0/7.1/7.2), php5-xdebug + php7.0-xdebug (dotdeb)
|
state: absent
|
||||||
# On Stretch: php-xdebug
|
|
||||||
|
|
||||||
- name: COMMAND | Disable xdebug package
|
|
||||||
command: phpdismod -v {{ php_version }} xdebug
|
|
||||||
args:
|
|
||||||
removes: "{{ php_etc_dir }}/cli/conf.d/20-xdebug.ini"
|
|
||||||
|
|
||||||
when: not php_install_xdebug
|
when: not php_install_xdebug
|
||||||
|
|
|
@ -2,9 +2,6 @@
|
||||||
; priority=20
|
; priority=20
|
||||||
zend_extension=xdebug.so
|
zend_extension=xdebug.so
|
||||||
|
|
||||||
{% if xdebug_version.stdout|version_compare('2.3', 'gt') %}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
xdebug_auto_trace={{ php_xdebug_auto_trace }}
|
xdebug_auto_trace={{ php_xdebug_auto_trace }}
|
||||||
xdebug_cli_color={{ php_xdebug_cli_color }}
|
xdebug_cli_color={{ php_xdebug_cli_color }}
|
||||||
xdebug_collect_assignments={{ php_xdebug_collect_assignments }}
|
xdebug_collect_assignments={{ php_xdebug_collect_assignments }}
|
||||||
|
@ -29,9 +26,7 @@ xdebug_overload_var_dump={{ php_xdebug_overload_var_dump }}
|
||||||
xdebug_profiler_append={{ php_xdebug_profiler_append }}
|
xdebug_profiler_append={{ php_xdebug_profiler_append }}
|
||||||
xdebug_profiler_enable={{ php_xdebug_profiler_enable }}
|
xdebug_profiler_enable={{ php_xdebug_profiler_enable }}
|
||||||
xdebug_profiler_enable_trigger={{ php_xdebug_profiler_enable_trigger }}
|
xdebug_profiler_enable_trigger={{ php_xdebug_profiler_enable_trigger }}
|
||||||
{% if xdebug_version.stdout|version_compare('2.3', 'gt') %}
|
|
||||||
xdebug_profiler_enable_trigger_value={{ php_xdebug_profiler_enable_trigger_value }}
|
xdebug_profiler_enable_trigger_value={{ php_xdebug_profiler_enable_trigger_value }}
|
||||||
{% endif %}
|
|
||||||
xdebug_profiler_output_dir={{ php_xdebug_profiler_output_dir }}
|
xdebug_profiler_output_dir={{ php_xdebug_profiler_output_dir }}
|
||||||
xdebug_profiler_output_name={{ php_xdebug_profiler_output_name }}
|
xdebug_profiler_output_name={{ php_xdebug_profiler_output_name }}
|
||||||
xdebug_remote_autostart={{ php_xdebug_remote_autostart }}
|
xdebug_remote_autostart={{ php_xdebug_remote_autostart }}
|
||||||
|
@ -48,9 +43,7 @@ xdebug_show_exception_trace={{ php_xdebug_show_exception_trace }}
|
||||||
xdebug_show_local_vars={{ php_xdebug_show_local_vars }}
|
xdebug_show_local_vars={{ php_xdebug_show_local_vars }}
|
||||||
xdebug_show_mem_delta={{ php_xdebug_show_mem_delta }}
|
xdebug_show_mem_delta={{ php_xdebug_show_mem_delta }}
|
||||||
xdebug_trace_enable_trigger={{ php_xdebug_trace_enable_trigger }}
|
xdebug_trace_enable_trigger={{ php_xdebug_trace_enable_trigger }}
|
||||||
{% if xdebug_version.stdout|version_compare('2.3', 'gt') %}
|
|
||||||
xdebug_trace_enable_trigger_value={{ php_xdebug_trace_enable_trigger_value }}
|
xdebug_trace_enable_trigger_value={{ php_xdebug_trace_enable_trigger_value }}
|
||||||
{% endif %}
|
|
||||||
xdebug_trace_format={{ php_xdebug_trace_format }}
|
xdebug_trace_format={{ php_xdebug_trace_format }}
|
||||||
xdebug_trace_options={{ php_xdebug_trace_options }}
|
xdebug_trace_options={{ php_xdebug_trace_options }}
|
||||||
xdebug_trace_output_dir={{ php_xdebug_trace_output_dir }}
|
xdebug_trace_output_dir={{ php_xdebug_trace_output_dir }}
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: APT | Install DotDeb key
|
||||||
|
apt_key:
|
||||||
|
url: 'http://www.dotdeb.org/dotdeb.gpg'
|
||||||
|
|
||||||
|
- name: APT | Add Dotdeb repository
|
||||||
|
apt_repository:
|
||||||
|
repo: 'deb http://packages.dotdeb.org {{ ansible_distribution_release }} all'
|
|
@ -0,0 +1,9 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: APT | Install Sury key
|
||||||
|
apt_key:
|
||||||
|
url: 'https://packages.sury.org/php/apt.gpg'
|
||||||
|
|
||||||
|
- name: APT | Add Sury repository
|
||||||
|
apt_repository:
|
||||||
|
repo: 'deb https://packages.sury.org/php/ {{ ansible_distribution_release }} main'
|
|
@ -1,7 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
- name: APT | Install DotDeb key
|
|
||||||
apt_key: url='http://www.dotdeb.org/dotdeb.gpg' state=present
|
|
||||||
|
|
||||||
- name: APT | Add Dotdeb repository
|
|
||||||
apt_repository: repo='deb http://packages.dotdeb.org {{ ansible_distribution_release }} all' state=present
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: SET_FACT | Prepare test vars
|
||||||
|
set_fact:
|
||||||
|
__nginx_site_dir: /etc/nginx/sites-enabled
|
||||||
|
|
||||||
|
- name: APT | Install packages
|
||||||
|
apt:
|
||||||
|
pkg: "{{ item }}"
|
||||||
|
update_cache: yes
|
||||||
|
cache_valid_time: 3600
|
||||||
|
with_items:
|
||||||
|
- apt-transport-https
|
||||||
|
- ca-certificates
|
||||||
|
- curl
|
||||||
|
- lsb-release
|
||||||
|
- nginx
|
||||||
|
|
||||||
|
- name: INCLUDE | Sury
|
||||||
|
include: Debian/sury.yml
|
||||||
|
when: >
|
||||||
|
ansible_distribution_major_version | version_compare(9, 'eq') and
|
||||||
|
php_version | version_compare('7.1', 'ge')
|
|
@ -1,7 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
- name: APT | Install Sury key
|
|
||||||
apt_key: url='https://packages.sury.org/php/apt.gpg' state=present
|
|
||||||
|
|
||||||
- name: APT | Add Sury repository
|
|
||||||
apt_repository: repo='deb https://packages.sury.org/php/ {{ ansible_distribution_release }} main' state=present
|
|
|
@ -5,19 +5,19 @@ server {
|
||||||
|
|
||||||
{% if php_fpm_poold.0.status_path is defined %}
|
{% if php_fpm_poold.0.status_path is defined %}
|
||||||
location = {{ php_fpm_poold.0.status_path }} {
|
location = {{ php_fpm_poold.0.status_path }} {
|
||||||
include {{ nginx_include }};
|
include fastcgi.conf;
|
||||||
fastcgi_pass unix:{{ php_default_fpm_sock }};
|
fastcgi_pass unix:{{ php_default_fpm_sock }};
|
||||||
}
|
}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if php_fpm_poold.0.ping_path is defined %}
|
{% if php_fpm_poold.0.ping_path is defined %}
|
||||||
location = {{ php_fpm_poold.0.ping_path }} {
|
location = {{ php_fpm_poold.0.ping_path }} {
|
||||||
include {{ nginx_include }};
|
include fastcgi.conf;
|
||||||
fastcgi_pass unix:{{ php_default_fpm_sock }};
|
fastcgi_pass unix:{{ php_default_fpm_sock }};
|
||||||
}
|
}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
include {{ nginx_include }};
|
include fastcgi.conf;
|
||||||
fastcgi_pass unix:{{ php_default_fpm_sock }};
|
fastcgi_pass unix:{{ php_default_fpm_sock }};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
vars:
|
vars:
|
||||||
vhost: 'test.local'
|
vhost: 'test.local'
|
||||||
php_extra_packages:
|
php_extra_packages:
|
||||||
- '{{ php_apt_prefix }}recode'
|
- '{{ php_package_prefix }}recode'
|
||||||
php_install_xdebug: true
|
php_install_xdebug: true
|
||||||
php_ini_fpm:
|
php_ini_fpm:
|
||||||
display_errors: 'Off'
|
display_errors: 'Off'
|
||||||
|
@ -24,54 +24,29 @@
|
||||||
|
|
||||||
pre_tasks:
|
pre_tasks:
|
||||||
|
|
||||||
- name: APT | Install packages
|
- name: INCLUDE | Pre tasks related to OS
|
||||||
apt: pkg={{ item }} update_cache=yes cache_valid_time=3600
|
include: "includes/pre_{{ ansible_os_family }}.yml"
|
||||||
with_items: ['apt-transport-https', 'curl', 'lsb-release', 'ca-certificates']
|
|
||||||
|
|
||||||
- name: INCLUDE | Dotdeb
|
|
||||||
include: includes/dotdeb.yml
|
|
||||||
when: >
|
|
||||||
ansible_distribution_major_version | version_compare(8, 'eq') and
|
|
||||||
php_version | version_compare('7.0', 'eq')
|
|
||||||
|
|
||||||
- name: INCLUDE | Sury
|
|
||||||
include: includes/sury.yml
|
|
||||||
when: >
|
|
||||||
ansible_distribution_major_version | version_compare(9, 'le') and
|
|
||||||
php_version | version_compare('7.1', 'eq')
|
|
||||||
|
|
||||||
- name: APT | Install nginx
|
|
||||||
apt: pkg=nginx state=present update_cache=yes cache_valid_time=3600
|
|
||||||
|
|
||||||
- name: SHELL | Get nginx version
|
|
||||||
shell: nginx -V 2>&1 | awk -F '/' '/nginx version/ { print $2 }'
|
|
||||||
register: nginx_version
|
|
||||||
changed_when: false
|
|
||||||
|
|
||||||
- set_fact: nginx_include="fastcgi_params"
|
|
||||||
when: nginx_version.stdout | version_compare('1.6', '<', true)
|
|
||||||
|
|
||||||
- set_fact: nginx_include="fastcgi.conf"
|
|
||||||
when: nginx_version.stdout | version_compare('1.6', '>=', true)
|
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
|
|
||||||
- name: TEMPLATE | Nginx site config
|
- name: TEMPLATE | Nginx site config
|
||||||
template:
|
template:
|
||||||
src: templates/site.j2
|
src: "templates/site.j2"
|
||||||
dest: /etc/nginx/sites-enabled/{{ vhost }}
|
dest: "{{ __nginx_site_dir }}/{{ vhost }}"
|
||||||
notify: reload nginx
|
notify: reload nginx
|
||||||
|
|
||||||
- name: FILE | Delete default site
|
- name: FILE | Delete default site
|
||||||
file:
|
file:
|
||||||
path: /etc/nginx/sites-enabled/default
|
path: "{{ __nginx_site_dir }}/default"
|
||||||
state: absent
|
state: absent
|
||||||
notify: reload nginx
|
notify: reload nginx
|
||||||
|
|
||||||
handlers:
|
handlers:
|
||||||
|
|
||||||
- name: reload nginx
|
- name: reload nginx
|
||||||
service: name=nginx state=reloaded
|
service:
|
||||||
|
name: nginx
|
||||||
|
state: reloaded
|
||||||
|
|
||||||
roles:
|
roles:
|
||||||
- ../../
|
- ../../
|
||||||
|
@ -85,10 +60,14 @@
|
||||||
failed_when: p.stdout == ''
|
failed_when: p.stdout == ''
|
||||||
|
|
||||||
- name: FILE | Create /var/www
|
- name: FILE | Create /var/www
|
||||||
file: dest=/var/www state=directory
|
file:
|
||||||
|
dest: /var/www
|
||||||
|
state: directory
|
||||||
|
|
||||||
- name: COPY | Add phpinfo
|
- name: COPY | Add phpinfo
|
||||||
copy: dest=/var/www/phpinfo.php content='<?php phpinfo();'
|
copy:
|
||||||
|
dest: /var/www/phpinfo.php
|
||||||
|
content: '<?php phpinfo();'
|
||||||
|
|
||||||
- name: SHELL | Check vhost
|
- name: SHELL | Check vhost
|
||||||
shell: "curl -v -H 'Host: {{ vhost }}' http://127.0.0.1/phpinfo.php 2> /dev/null | grep h1 | grep -o 'PHP Version {{ php_version }}' | sed -r 's/<//g'"
|
shell: "curl -v -H 'Host: {{ vhost }}' http://127.0.0.1/phpinfo.php 2> /dev/null | grep h1 | grep -o 'PHP Version {{ php_version }}' | sed -r 's/<//g'"
|
||||||
|
|
|
@ -1,6 +0,0 @@
|
||||||
php_default_version: '5.6'
|
|
||||||
php_managed_versions:
|
|
||||||
- '5.6'
|
|
||||||
- '7.0'
|
|
||||||
- '7.1'
|
|
||||||
- '7.2'
|
|
|
@ -1,5 +1 @@
|
||||||
php_default_version: '7.0'
|
php_default_version: '7.0'
|
||||||
php_managed_versions:
|
|
||||||
- '7.0'
|
|
||||||
- '7.1'
|
|
||||||
- '7.2'
|
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
php_packages:
|
||||||
|
- '{{ php_package_prefix }}cli'
|
||||||
|
- '{{ php_package_prefix }}curl'
|
||||||
|
- '{{ php_package_prefix }}gd'
|
||||||
|
- '{{ php_package_prefix }}mysql'
|
||||||
|
- '{{ php_package_prefix }}intl'
|
||||||
|
|
||||||
|
php_package_prefix: 'php{{ php_version }}-'
|
||||||
|
|
||||||
|
php_etc_dir: '/etc/php/{{ php_version }}'
|
||||||
|
php_mods_dir: '{{ php_etc_dir }}/mods-available'
|
||||||
|
php_fpm_pool_dir: '{{ php_etc_dir }}/fpm/pool.d'
|
||||||
|
|
||||||
|
php_fpm_service: 'php{{ php_version }}-fpm'
|
||||||
|
php_default_fpm_sock: '/var/run/php/php{{ php_version }}-fpm.sock'
|
||||||
|
|
||||||
|
php_cli_ini: '{{ php_etc_dir }}/cli/php.ini'
|
||||||
|
php_fpm_ini: '{{ php_etc_dir }}/fpm/php.ini'
|
|
@ -1,9 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
php_packages:
|
|
||||||
- '{{ php_apt_prefix }}cli'
|
|
||||||
- '{{ php_apt_prefix }}curl'
|
|
||||||
- '{{ php_apt_prefix }}gd'
|
|
||||||
- '{{ php_apt_prefix }}mcrypt'
|
|
||||||
- '{{ php_mysql_package }}'
|
|
||||||
- '{{ php_apt_prefix }}intl'
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
php_apt_prefix: 'php5-'
|
|
||||||
php_etc_dir: '/etc/php5'
|
|
||||||
php_fpm_service: 'php5-fpm'
|
|
||||||
php_default_fpm_sock: '/var/run/php5-fpm.sock'
|
|
||||||
php_mods_dir: '/etc/php5/mods-available'
|
|
||||||
php_mysql_package: 'php5-mysqlnd'
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
php_apt_prefix: 'php7.0-'
|
|
||||||
php_etc_dir: '/etc/php/7.0'
|
|
||||||
php_fpm_service: 'php7.0-fpm'
|
|
||||||
php_default_fpm_sock: '/var/run/php/php7.0-fpm.sock'
|
|
||||||
php_mods_dir: '/etc/php/7.0/mods-available'
|
|
||||||
php_mysql_package: 'php7.0-mysql'
|
|
|
@ -1,8 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
php_apt_prefix: 'php7.1-'
|
|
||||||
php_etc_dir: '/etc/php/7.1'
|
|
||||||
php_fpm_service: 'php7.1-fpm'
|
|
||||||
php_default_fpm_sock: '/var/run/php/php7.1-fpm.sock'
|
|
||||||
php_mods_dir: '/etc/php/7.1/mods-available'
|
|
||||||
php_mysql_package: 'php7.1-mysql'
|
|
Loading…
Reference in New Issue