diff options
Diffstat (limited to 'opt/infra/roles/nginx')
-rw-r--r-- | opt/infra/roles/nginx/defaults/main.yml | 10 | ||||
-rw-r--r-- | opt/infra/roles/nginx/handlers/main.yml | 4 | ||||
-rw-r--r-- | opt/infra/roles/nginx/tasks/main.yml | 13 | ||||
-rw-r--r-- | opt/infra/roles/nginx/templates/elk.conf.j2 | 14 | ||||
-rw-r--r-- | opt/infra/roles/nginx/templates/qtip.conf.j2 | 17 | ||||
-rw-r--r-- | opt/infra/roles/nginx/templates/testapi.conf.j2 | 17 |
6 files changed, 75 insertions, 0 deletions
diff --git a/opt/infra/roles/nginx/defaults/main.yml b/opt/infra/roles/nginx/defaults/main.yml new file mode 100644 index 00000000..cdd1d773 --- /dev/null +++ b/opt/infra/roles/nginx/defaults/main.yml @@ -0,0 +1,10 @@ +--- +services: + - { name: kibana, upstream: 'http://127.0.0.1:5601' } + - { name: elastic, upstream: 'http://127.0.0.1:9200' } + +qtip_services: + - { name: restful_api, upstream: 'http://127.0.0.1:5000' } + +testapi_services: + - { name: testapi, upstream: 'http://127.0.0.1:8000' } diff --git a/opt/infra/roles/nginx/handlers/main.yml b/opt/infra/roles/nginx/handlers/main.yml new file mode 100644 index 00000000..35585363 --- /dev/null +++ b/opt/infra/roles/nginx/handlers/main.yml @@ -0,0 +1,4 @@ +--- +- name: restart nginx + become: true + service: name=nginx state=restarted diff --git a/opt/infra/roles/nginx/tasks/main.yml b/opt/infra/roles/nginx/tasks/main.yml new file mode 100644 index 00000000..5c78166c --- /dev/null +++ b/opt/infra/roles/nginx/tasks/main.yml @@ -0,0 +1,13 @@ +--- +- name: nginx is installed + become: true + package: name=nginx state=present +- name: qtip server configuration is generated + become: true + template: src={{ item }}.conf.j2 dest=/etc/nginx/sites-enabled/{{ item }}.conf + with_items: + - elk + - qtip + - testapi + notify: + - restart nginx diff --git a/opt/infra/roles/nginx/templates/elk.conf.j2 b/opt/infra/roles/nginx/templates/elk.conf.j2 new file mode 100644 index 00000000..271690e0 --- /dev/null +++ b/opt/infra/roles/nginx/templates/elk.conf.j2 @@ -0,0 +1,14 @@ +# {{ ansible_managed }} + +# servers +# +{% for service in services %} +server { + listen 80; + listen 443 ssl; + server_name {{ service.name }}.qtip.openzero.net; + location / { + proxy_pass {{ service.upstream }}; + } +} +{% endfor %} diff --git a/opt/infra/roles/nginx/templates/qtip.conf.j2 b/opt/infra/roles/nginx/templates/qtip.conf.j2 new file mode 100644 index 00000000..3a15c6ba --- /dev/null +++ b/opt/infra/roles/nginx/templates/qtip.conf.j2 @@ -0,0 +1,17 @@ +# {{ ansible_managed }} + +# servers +# +{% for service in qtip_services %} +server { + listen 80; + listen 443 ssl; + server_name {{ service.name }}.qtip.openzero.net; + location / { + proxy_pass {{ service.upstream }}; + sub_filter {{ service.upstream }} 'http://{{ service.name }}.qtip.openzero.net'; + sub_filter_once off; + sub_filter_types text/html application/json; + } +} +{% endfor %} diff --git a/opt/infra/roles/nginx/templates/testapi.conf.j2 b/opt/infra/roles/nginx/templates/testapi.conf.j2 new file mode 100644 index 00000000..6a4d388b --- /dev/null +++ b/opt/infra/roles/nginx/templates/testapi.conf.j2 @@ -0,0 +1,17 @@ +# {{ ansible_managed }} + +# servers +# +{% for service in testapi_services %} +server { + listen 80; + listen 443 ssl; + server_name {{ service.name }}.qtip.openzero.net; + location / { + proxy_pass {{ service.upstream }}; + sub_filter {{ service.upstream }} 'http://{{ service.name }}.qtip.openzero.net'; + sub_filter_once off; + sub_filter_types text/html application/json; + } +} +{% endfor %} |