andreychernih/railsbox

View on GitHub
templates/ansible/roles/nginx/tasks/main.yml

Summary

Maintainability
Test Coverage
---
- name: Install nginx
  apt: name=nginx
  tags: nginx

- name: Disable default nginx site
  file: path=/etc/nginx/sites-enabled/default state=absent
  notify: restart nginx
  tags: nginx

- name: Copy nginx configuration
  template: src={{ server_type }}.conf.j2 dest=/etc/nginx/sites-available/{{ server_name }}.conf
  notify: restart nginx
  tags: nginx

- name: Symlink nginx configuration
  file: src=/etc/nginx/sites-available/{{ server_name }}.conf dest=/etc/nginx/sites-enabled/{{ server_name }}.conf state=link
  notify: restart nginx
  tags: nginx

- name: Create nginx.conf
  template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf
  notify: restart nginx
  tags: nginx

- name: Create certificates directory
  file: path={{ ssl_certificate_path|dirname }} recurse=yes state=directory
  tags: nginx

- name: Create self-signed SSL cert
  command: openssl req -new -nodes -x509 -subj "/C=US/ST=California/L=MountainView/O=IT/CN=${server_name}" -days 3650 -keyout {{ ssl_certificate_key_path }} -out {{ ssl_certificate_path }} -extensions v3_ca creates={{ ssl_certificate_path }}
  notify: restart nginx
  tags: nginx