Go to file
Alessandro Fael Garcia 3736780115 Update README.md
2018-01-20 13:18:59 -08:00
defaults Multiple changes 2018-01-19 10:27:47 -08:00
files Initial role commit 2018-01-10 14:40:01 -08:00
handlers Initial role commit 2018-01-10 14:40:01 -08:00
meta Initial role commit 2018-01-10 14:40:01 -08:00
tasks Multiple changes 2018-01-19 10:27:47 -08:00
templates Multiple changes 2018-01-19 10:27:47 -08:00
tests Initial role commit 2018-01-10 14:40:01 -08:00
vars Initial role commit 2018-01-10 14:40:01 -08:00
.gitignore Change default location of NGINX license 2018-01-17 09:13:44 -08:00
.travis.yml Add travis.yml 2018-01-10 14:46:32 -08:00
LICENSE Initial commit 2018-01-10 14:37:00 -08:00
README.md Update README.md 2018-01-20 13:18:59 -08:00

Ansible NGINX Role

Ansible Galaxy Build Status

This role installs open source NGINX or NGINX Plus on your target host.

Requirements

This role was developed using Ansible 2.4.0.0. Backwards compatibility is not guaranteed.

Use ansible-galaxy install nginxinc.nginx to install the role on your system.

It supports all platforms supported by open source NGINX and NGINX Plus:

Open Source NGINX:

CentOS:
  versions:
    - 6
    - 7
RedHat:
  versions:
    - 6
    - 7
Debian:
  versions:
    - jessie
    - stretch
Ubuntu:
  versions:
    - trusty
    - xenial
    - zesty
SUSE/SLES:
  versions:
    - 12

NGINX Plus:

CentOS:
  versions:
    - 6
    - 7
RedHat:
  versions:
    - 6
    - 7
Debian:
  versions:
    - wheezy
    - jessie
    - stretch
Ubuntu:
  versions:
    - trusty
    - xenial
    - zesty
SUSE/SLES:
  versions:
    - 12
FreeBSD:
  versions:
    - 10.3
    - 11
OracleLinux:
  versions:
    - 6.5
    - 7
Amazon Linux:
  versions:
    - 2016.09

Role Variables

This role has multiple variables. The defaults for all these variables are the following:

# Specify which version of NGINX you want to install.
# Options are 'opensource' or 'plus'.
# Default is 'opensource'.
type: opensource
# Specify which branch of Open Source NGINX you want to install.
# Options are 'mainline' or 'stable'.
# Default is stable.
branch: mainline
# Install nginscript, perl and/or waf modules.
# Default is false.
modules:
  njs: false
  perl: false
  waf: false
# Install NGINX Amplify.
# Use your NGINX Amplify API key.
# Default is null.
amplify: null
# Enable NGINX status data.
# Will enable 'stub_status' in open source NGINX and 'status' in NGINX Plus.
# Default is false.
status: false
# Enable NGINX Plus REST API and dashboard.
# Default is false.
api:
  enable: false
  write: false
  dashboard: false
# Location of your NGINX Plus license in your local machine.
# Default is the files folder within the NGINX Ansible role.
license:
  certificate: nginx-repo.crt
  key: nginx-repo.key

Dependencies

None

Example Playbook

This is a sample playbook file for deploying the Ansible Galaxy NGINX role in a localhost and installing the open source version of NGINX.

---
- hosts: localhost
  become: true
  roles:
    - role: nginxinc.nginx

This is a sample playbook file for deploying the Ansible Galaxy NGINX role in a localhost and installing NGINX Plus.

---
- hosts: localhost
  become: true
  roles:
    - role: nginxinc.nginx
  vars:
    - type: plus

This is a sample playbook file for deploying the Ansible Galaxy NGINX role to a dynamic inventory containing the nginx tag.

---
- hosts: tag_nginx
  remote_user: root
  roles:
    - role: nginxinc.nginx

To run any of the above sample playbooks create a setup-nginx.yml file and paste the contents. Executing the Ansible Playbook is then as simple as executing ansible-playbook setup-nginx.yml.

Alternatively, you can also clone this repository instead of installing it from Ansible Galaxy. If you decide to do so, replace the role variable in the previous sample playbooks from nginxinc.nginx to ansible-role-nginx.

License

Apache License, Version 2.0

Author Information

Alessandro Fael Garcia

NGINX Inc