initial commit
This commit is contained in:
58
README.md
Normal file
58
README.md
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
Role Name
|
||||||
|
=========
|
||||||
|
|
||||||
|
|
||||||
|
Install php-fpm (for apache)
|
||||||
|
|
||||||
|
and some php packages along the way
|
||||||
|
|
||||||
|
Requirements
|
||||||
|
------------
|
||||||
|
|
||||||
|
None
|
||||||
|
|
||||||
|
Role Variables
|
||||||
|
--------------
|
||||||
|
|
||||||
|
php_version: default 73
|
||||||
|
php_fpm_pool_user: default apache
|
||||||
|
php_fpm_pool_group: default apache
|
||||||
|
php_fpm_listen_url: default 127.0.0.1:90{{ php_version }}
|
||||||
|
php_pm: static
|
||||||
|
php_pm_max_children: 1000
|
||||||
|
php_pm_max_requests: 10000
|
||||||
|
php_pm_status_url: /phpstatus
|
||||||
|
php_packages: [ 'php{{ php_version }}-php-common' ]
|
||||||
|
|
||||||
|
Dependencies
|
||||||
|
------------
|
||||||
|
|
||||||
|
Better have apache
|
||||||
|
|
||||||
|
|
||||||
|
Example Playbook
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
||||||
|
|
||||||
|
- hosts: servers
|
||||||
|
vars:
|
||||||
|
httpd_server_name: foobar.fr
|
||||||
|
php_version: 73
|
||||||
|
php_packages:
|
||||||
|
- php73-php-imap
|
||||||
|
- php73-php-pear
|
||||||
|
roles:
|
||||||
|
- apache
|
||||||
|
- php-fpm
|
||||||
|
|
||||||
|
License
|
||||||
|
-------
|
||||||
|
|
||||||
|
BSD
|
||||||
|
|
||||||
|
Author Information
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Thomas C <thomas@opendoor.fr>
|
||||||
|
|
||||||
11
defaults/main.yml
Normal file
11
defaults/main.yml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
# defaults file for php-fpm
|
||||||
|
php_version: 73
|
||||||
|
php_fpm_pool_user: apache
|
||||||
|
php_fpm_pool_group: apache
|
||||||
|
php_fpm_listen_url: 127.0.0.1:90{{ php_version }}
|
||||||
|
php_pm: static
|
||||||
|
php_pm_max_children: 1000
|
||||||
|
php_pm_max_requests: 10000
|
||||||
|
php_pm_status_url: /phpstatus
|
||||||
|
php_packages: [ 'php{{ php_version }}-php-common' ]
|
||||||
6
handlers/main.yml
Normal file
6
handlers/main.yml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
# handlers file for php-fpm
|
||||||
|
- name: restart php-fpm
|
||||||
|
service:
|
||||||
|
name: php-fpm
|
||||||
|
state: restarted
|
||||||
53
meta/main.yml
Normal file
53
meta/main.yml
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
galaxy_info:
|
||||||
|
author: your name
|
||||||
|
description: your role description
|
||||||
|
company: your company (optional)
|
||||||
|
|
||||||
|
# If the issue tracker for your role is not on github, uncomment the
|
||||||
|
# next line and provide a value
|
||||||
|
# issue_tracker_url: http://example.com/issue/tracker
|
||||||
|
|
||||||
|
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||||
|
# - BSD-3-Clause (default)
|
||||||
|
# - MIT
|
||||||
|
# - GPL-2.0-or-later
|
||||||
|
# - GPL-3.0-only
|
||||||
|
# - Apache-2.0
|
||||||
|
# - CC-BY-4.0
|
||||||
|
license: license (GPL-2.0-or-later, MIT, etc)
|
||||||
|
|
||||||
|
min_ansible_version: 2.9
|
||||||
|
|
||||||
|
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||||
|
# min_ansible_container_version:
|
||||||
|
|
||||||
|
#
|
||||||
|
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||||
|
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||||
|
# To view available platforms and versions (or releases), visit:
|
||||||
|
# https://galaxy.ansible.com/api/v1/platforms/
|
||||||
|
#
|
||||||
|
# platforms:
|
||||||
|
# - name: Fedora
|
||||||
|
# versions:
|
||||||
|
# - all
|
||||||
|
# - 25
|
||||||
|
# - name: SomePlatform
|
||||||
|
# versions:
|
||||||
|
# - all
|
||||||
|
# - 1.0
|
||||||
|
# - 7
|
||||||
|
# - 99.99
|
||||||
|
|
||||||
|
galaxy_tags: []
|
||||||
|
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||||
|
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||||
|
# remove the '[]' above, if you add tags to this list.
|
||||||
|
#
|
||||||
|
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||||
|
# Maximum 20 tags per role.
|
||||||
|
|
||||||
|
dependencies: []
|
||||||
|
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||||
|
# if you add dependencies to this list.
|
||||||
|
|
||||||
4
tasks/main.yml
Normal file
4
tasks/main.yml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
---
|
||||||
|
# tasks file for php-fpm
|
||||||
|
- include_tasks: php-fpm.yml
|
||||||
|
tags: php
|
||||||
45
tasks/php-fpm.yml
Normal file
45
tasks/php-fpm.yml
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
---
|
||||||
|
# tasks file for php-fpm
|
||||||
|
- name: install repository definitions
|
||||||
|
yum:
|
||||||
|
name:
|
||||||
|
- epel-release
|
||||||
|
- http://rpms.remirepo.net/enterprise/remi-release-{{ ansible_distribution_major_version }}.rpm
|
||||||
|
- yum-utils
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: activate given repo
|
||||||
|
ini_file:
|
||||||
|
path: /etc/yum.repos.d/remi-php{{ php_version }}.repo
|
||||||
|
section: "remi-php{{ php_version }}"
|
||||||
|
option: enabled
|
||||||
|
value: 1
|
||||||
|
|
||||||
|
- name: install php-fpm
|
||||||
|
yum:
|
||||||
|
name:
|
||||||
|
- php{{php_version}}-php-fpm
|
||||||
|
state: installed
|
||||||
|
|
||||||
|
- name: install php packages
|
||||||
|
yum:
|
||||||
|
name: "{{ php_packages }}"
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: configure php-fpm pool 2
|
||||||
|
template:
|
||||||
|
src: www.conf
|
||||||
|
dest: /etc/opt/remi/php{{ php_version }}/php-fpm.d/www_{{ php_version }}.conf
|
||||||
|
notify: restart php-fpm
|
||||||
|
|
||||||
|
- name: create log symlink
|
||||||
|
file:
|
||||||
|
src: /var/opt/remi/php{{ php_version }}/log/php-fpm
|
||||||
|
dest: /var/log/php-fpm
|
||||||
|
state: link
|
||||||
|
|
||||||
|
- name: start and enable service
|
||||||
|
service:
|
||||||
|
name: php{{php_version}}-php-fpm
|
||||||
|
enabled: yes
|
||||||
|
state: started
|
||||||
3
templates/php-fpm.conf.tt
Normal file
3
templates/php-fpm.conf.tt
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<FilesMatch \.php$>
|
||||||
|
SetHandler proxy:fcgi://{{ php_fpm_listen_url }}
|
||||||
|
</FilesMatch>
|
||||||
20
templates/www.conf
Normal file
20
templates/www.conf
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
[www{{php_version}}]
|
||||||
|
user = {{ php_fpm_pool_user }}
|
||||||
|
group = {{ php_fpm_pool_group }}
|
||||||
|
listen = {{ php_fpm_listen_url }}
|
||||||
|
listen.backlog = 511
|
||||||
|
pm = {{ php_pm }}
|
||||||
|
pm.max_children = {{ php_pm_max_children }}
|
||||||
|
pm.start_servers = 5
|
||||||
|
pm.min_spare_servers = 5
|
||||||
|
pm.max_spare_servers = 35
|
||||||
|
pm.max_requests = {{ php_pm_max_requests }}
|
||||||
|
pm.status_path = {{ php_pm_status_url }}
|
||||||
|
ping.path = /ping
|
||||||
|
access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{mili}d %{kilo}M %C%%"
|
||||||
|
access.log = /var/opt/remi/php{{ php_version }}/log/php-fpm/$pool.access.log
|
||||||
|
slowlog = /var/opt/remi/php{{ php_version }}/log/php-fpm/$pool.slow.log
|
||||||
|
request_slowlog_timeout = 5s
|
||||||
|
php_value[session.save_handler] = files
|
||||||
|
php_value[session.save_path] = /var/opt/remi/php{{ php_version }}/lib/php/se
|
||||||
|
php_value[soap.wsdl_cache_dir] = /var/opt/remi/php{{ php_version }}/lib/php/ws
|
||||||
2
tests/inventory
Normal file
2
tests/inventory
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
localhost
|
||||||
|
|
||||||
5
tests/test.yml
Normal file
5
tests/test.yml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
- hosts: localhost
|
||||||
|
remote_user: root
|
||||||
|
roles:
|
||||||
|
- php-fpm
|
||||||
2
vars/main.yml
Normal file
2
vars/main.yml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
# vars file for php-fpm
|
||||||
Reference in New Issue
Block a user