ansible-role-nginx/tasks/main.yml

46 lines
1.1 KiB
YAML

---
# Variable setup.
- name: Include OS-specific variables.
include_vars: "{{ ansible_os_family }}.yml"
- name: Define nginx_user.
set_fact:
nginx_user: "{{ __nginx_user }}"
when: nginx_user is not defined
# Nginx setup.
- name: Enable nginx repo (RedHat).
template:
src: nginx.repo.j2
dest: /etc/yum.repos.d/nginx.repo
owner: root
group: root
mode: 0644
when: ansible_os_family == 'RedHat'
- name: Ensure nginx is installed (RedHat).
yum: pkg=nginx state=installed enablerepo=nginx
when: ansible_os_family == 'RedHat'
- name: Ensure nginx is installed (Debian).
apt: pkg=nginx state=installed
when: ansible_os_family == 'Debian'
- name: Copy nginx configuration in place.
template:
src: nginx.conf.j2
dest: /etc/nginx/nginx.conf
owner: root
group: root
mode: 0644
notify: restart nginx
- name: Ensure nginx is started and enabled to start at boot.
service: name=nginx state=started enabled=yes
- name: Remove default nginx config file (if configured).
file:
path: "{{ nginx_default_vhost_path }}"
state: absent
when: nginx_remove_default_vhost
notify: restart nginx