ansible-roles/nginx/tasks/main.yml

109 lines
2.3 KiB
YAML

---
- name: Ensure Nginx is installed
apt:
name: nginx-full
state: installed
notify: restart nginx
tags:
- nginx
- name: Install Nginx configuration
template:
src: nginx.conf.j2
dest: /etc/nginx/nginx.conf
mode: 0640
# force: yes
notify: reload nginx
tags:
- nginx
- name: Copy snippets
copy:
src: nginx/snippets/
dest: /etc/nginx/snippets/
directory_mode: 0640
mode: 0640
# force: yes
notify: reload nginx
tags:
- nginx
- name: add IP addresses to private IP whitelist
lineinfile:
dest: /etc/nginx/snippets/private_ipaddr_whitelist
line: "allow {{ item }};"
state: present
with_items: "{{ nginx_private_ipaddr_whitelist_present }}"
- name: remove IP addresses from private IP whitelist
lineinfile:
dest: /etc/nginx/snippets/private_ipaddr_whitelist
line: "allow {{ item }};"
state: absent
with_items: "{{ nginx_private_ipaddr_whitelist_absent }}"
- name: add user:pwd to private htpasswd
lineinfile:
dest: /etc/nginx/snippets/private_htpasswd
line: "{{ item }}"
state: present
with_items: "{{ nginx_private_htpasswd_present }}"
- name: remove user:pwd from private htpasswd
lineinfile:
dest: /etc/nginx/snippets/private_htpasswd
line: "{{ item }}"
state: absent
with_items: "{{ nginx_private_htpasswd_absent }}"
- name: Check if a certificate is present for default site
stat:
path: /etc/ssl/certs/{{ ansible_fqdn }}.crt
register: stat_crt
tags:
- nginx
- include: create_default_cert.yml
when: not stat_crt.stat.exists
tags:
- nginx
- name: Install Nginx default site
template:
src: default_site.j2
dest: /etc/nginx/sites-available/default
mode: 0640
# force: yes
notify: reload nginx
tags:
- nginx
- name: Enable Nginx default site
file:
src: /etc/nginx/sites-available/default
dest: /etc/nginx/sites-enabled/default
state: link
notify: reload nginx
tags:
- nginx
- name: Verify that the service is enabled and started
service:
name: nginx
enabled: yes
state: started
tags:
- nginx
- name: Check if Munin is installed
stat:
path: /etc/munin/plugin-conf.d/munin-node
register: stat_munin_node
tags:
- munin
- include: configure_munin.yml
when: stat_munin_node.stat.exists
tags:
- munin