Use upstream config from HanXHX.php role
parent
993310641a
commit
c524b97b0f
|
@ -2,3 +2,4 @@
|
||||||
*.swp
|
*.swp
|
||||||
*.retry
|
*.retry
|
||||||
*.pyc
|
*.pyc
|
||||||
|
/tests/HanXHX.php
|
||||||
|
|
|
@ -26,6 +26,8 @@ before_install:
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- pip install "$ANSIBLE_VERSION"
|
- pip install "$ANSIBLE_VERSION"
|
||||||
|
- ansible-galaxy install -p ./tests HanXHX.php,master
|
||||||
|
- mv ./tests/HanXHX.php ./tests/TMP__HanXHX.php
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- VAGRANT_DEFAULT_PROVIDER=docker vagrant up $PLATFORM
|
- VAGRANT_DEFAULT_PROVIDER=docker vagrant up $PLATFORM
|
||||||
|
|
10
README.md
10
README.md
|
@ -105,6 +105,16 @@ Dependencies
|
||||||
|
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
|
If you need to dev this role locally
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
Before use vagrant, run once:
|
||||||
|
|
||||||
|
```
|
||||||
|
ansible-galaxy install -p ./tests/ HanXHX.php,master && mv tests/HanXHX.php/ tests/TMP__HanXHX.php
|
||||||
|
```
|
||||||
|
|
||||||
Example Playbook
|
Example Playbook
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
|
|
|
@ -51,3 +51,4 @@
|
||||||
creates: "{{ nginx_acmesh_dir }}"
|
creates: "{{ nginx_acmesh_dir }}"
|
||||||
|
|
||||||
when: not acme.stat.exists
|
when: not acme.stat.exists
|
||||||
|
|
||||||
|
|
|
@ -1,18 +1,40 @@
|
||||||
---
|
---
|
||||||
|
|
||||||
|
- block:
|
||||||
|
|
||||||
|
- name: SET_FACT | temp
|
||||||
|
set_fact:
|
||||||
|
tmp_fpm_pool: |
|
||||||
|
[
|
||||||
|
{% for p in ansible_local.hanxhx_php.fpm_pool %}
|
||||||
|
{
|
||||||
|
"upstream_name": "{{ p.name }}",
|
||||||
|
"sockets": [{
|
||||||
|
{% if p.listen.startswith('/') %}
|
||||||
|
"unix": "{{ p.listen }}"
|
||||||
|
{% else %}
|
||||||
|
{% set host = p.listen.split(":")[0] %}
|
||||||
|
{% set port = p.listen.split(":")[1] %}
|
||||||
|
"host": "{{ host }}",
|
||||||
|
"port": "{{ port }}"
|
||||||
|
{% endif %}
|
||||||
|
}]
|
||||||
|
}{% if not loop.last %},{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
]
|
||||||
|
|
||||||
|
- name: SET_FACT | new php
|
||||||
|
set_fact:
|
||||||
|
nginx_php: "{{ nginx_php + tmp_fpm_pool }}"
|
||||||
|
|
||||||
|
when: ansible_local.hanxhx_php.fpm_pool is defined
|
||||||
|
|
||||||
- name: TEMPLATE | Deploy PHP upstream to Nginx
|
- name: TEMPLATE | Deploy PHP upstream to Nginx
|
||||||
template:
|
template:
|
||||||
src: "etc/nginx/conf.d/php.conf.j2"
|
src: "etc/nginx/conf.d/php.conf.j2"
|
||||||
dest: "{{ nginx_etc_dir }}/conf.d/php.conf"
|
dest: "{{ nginx_etc_dir }}/conf.d/php.conf"
|
||||||
when: nginx_php | length > 0
|
|
||||||
notify: reload nginx
|
notify: reload nginx
|
||||||
|
|
||||||
- name: FILE | Delete PHP upstream
|
|
||||||
file:
|
|
||||||
path: "{{ nginx_etc_dir }}/conf.d/php.conf"
|
|
||||||
state: absent
|
|
||||||
when: nginx_php | length == 0
|
|
||||||
|
|
||||||
- name: TEMPLATE | Deploy other upstreams
|
- name: TEMPLATE | Deploy other upstreams
|
||||||
template:
|
template:
|
||||||
src: "etc/nginx/conf.d/_upstream.conf.j2"
|
src: "etc/nginx/conf.d/_upstream.conf.j2"
|
||||||
|
|
|
@ -14,7 +14,18 @@ upstream {{ php.upstream_name | default((php.version | php_default_upstream_name
|
||||||
server unix:{{ php.version | php_default_upstream_socket }} weight=1;
|
server unix:{{ php.version | php_default_upstream_socket }} weight=1;
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
}
|
}
|
||||||
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
|
{% if ansible_local.hanxhx_php.fpm_pool is defined%}
|
||||||
|
# -------------------------------------------------------
|
||||||
|
# Auto-detected PHP config for HanXHX.php ansible role
|
||||||
|
# -------------------------------------------------------
|
||||||
|
|
||||||
|
{% for php in ansible_local.hanxhx_php.fpm_pool %}
|
||||||
|
upstream {{ php.name }} {
|
||||||
|
server {% if php.listen.startswith('/') %}unix:{{ php.listen }}{% else %}{{ php.listen }}{% endif %};
|
||||||
|
}
|
||||||
|
{% endfor %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
# vim:filetype=nginx
|
# vim:filetype=nginx
|
||||||
|
|
|
@ -78,3 +78,23 @@
|
||||||
- name: SET_FACT | ngrok_path
|
- name: SET_FACT | ngrok_path
|
||||||
set_fact:
|
set_fact:
|
||||||
ngrok_path: '/tmp/ngrok'
|
ngrok_path: '/tmp/ngrok'
|
||||||
|
|
||||||
|
- name: USER | Create PHP User foo
|
||||||
|
user:
|
||||||
|
name: foo
|
||||||
|
system: yes
|
||||||
|
|
||||||
|
- name: INCLUDE_ROLE | HanXHX.php
|
||||||
|
include_role:
|
||||||
|
name: "{{ playbook_dir }}/HanXHX.php"
|
||||||
|
vars:
|
||||||
|
php_autoremove_default_pool: false
|
||||||
|
php_fpm_poold:
|
||||||
|
- name: 'hx_unix'
|
||||||
|
user: 'foo'
|
||||||
|
php_value:
|
||||||
|
display_errors: 'Off'
|
||||||
|
php_admin_value:
|
||||||
|
memory_limit: '98M'
|
||||||
|
- name: 'hx_ip'
|
||||||
|
listen: '127.0.0.1:9636'
|
||||||
|
|
|
@ -213,8 +213,10 @@
|
||||||
use_access_log: true
|
use_access_log: true
|
||||||
- name: 'test-php-index.local'
|
- name: 'test-php-index.local'
|
||||||
template: '_php_index'
|
template: '_php_index'
|
||||||
|
php_upstream: 'hx_unix'
|
||||||
- name: 'test-php-index2.local'
|
- name: 'test-php-index2.local'
|
||||||
template: '_php_index2'
|
template: '_php_index2'
|
||||||
|
php_upstream: 'hx_ip'
|
||||||
- name: 'test-proxy.local'
|
- name: 'test-proxy.local'
|
||||||
listen:
|
listen:
|
||||||
- 8080
|
- 8080
|
||||||
|
|
Loading…
Reference in New Issue