Go to file
Alessandro Fael Garcia bf2916fc55
Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309)
*   Explicitly define `mode` in relevant tasks.
*   Explicitly define the `nginx` `apt_repository` filename in Debian based distros.
*   Building OpenSSL from source should now work properly in CentOS 8.
2020-08-28 10:30:23 +02:00
.github Improve formatting (#293) 2020-07-30 12:47:08 +02:00
defaults/main Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309) 2020-08-28 10:30:23 +02:00
files Prepare 0.15.0 release (#300) 2020-08-19 18:39:17 +02:00
handlers Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309) 2020-08-28 10:30:23 +02:00
meta Prepare 0.15.0 release (#300) 2020-08-19 18:39:17 +02:00
molecule Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309) 2020-08-28 10:30:23 +02:00
tasks Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309) 2020-08-28 10:30:23 +02:00
templates Prepare 0.15.0 release (#300) 2020-08-19 18:39:17 +02:00
vars Initial role commit 2018-01-10 14:40:01 -08:00
.gitignore Prepare 0.15.0 release (#300) 2020-08-19 18:39:17 +02:00
.travis.yml Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309) 2020-08-28 10:30:23 +02:00
.yamllint Buildfromsource (#233) 2020-03-25 18:43:32 +01:00
CHANGELOG.md Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309) 2020-08-28 10:30:23 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2019-12-12 14:22:11 -08:00
CONTRIBUTING.md Prepare 0.15.0 release (#300) 2020-08-19 18:39:17 +02:00
LICENSE Initial commit 2018-01-10 14:37:00 -08:00
README.md Update Ansible to 2.9.12 and explicitly set mode on relevant tasks (#309) 2020-08-28 10:30:23 +02:00

Ansible NGINX Role

Ansible Galaxy Build Status

This role installs NGINX Open Source, NGINX Plus, the NGINX Amplify agent, or NGINX Unit on your target host.

Note: This role is still in active development. There may be unidentified issues and the role variables may change as development continues.

Deprecation Warnings:

  • There now is a separate role to manage and create NGINX configurations available here. Any new issues or PRs related to configuring NGINX should be submitted in the new NGINX Config repository. New issues or PRs related to configuring NGINX submitted in this repository will not be worked on (with the exception of major bugfixes). The NGINX configuration functionalities included in this role will be removed in an upcoming release.
  • NGINX Unit now has a separate role available here. Any new issues or PRs related to NGINX Unit should be submitted in the new NGINX Unit repository. New issues or PRs related to NGINX Unit submitted in this repository will not be worked on (with the exception of major bugfixes). The NGINX Unit functionalities included in this role will be removed in an upcoming release.

Requirements

Ansible

This role was developed and tested with maintained versions of Ansible. Backwards compatibility is not guaranteed.

Instructions on how to install Ansible can be found in the Ansible website.

Molecule

Molecule is used to test the various functionalities of the role.

Instructions on how to install Molecule can be found in the Molecule website.

Installation

Ansible Galaxy

Use ansible-galaxy install nginxinc.nginx to install the latest stable release of the role on your system.

Git

Use git clone https://github.com/nginxinc/ansible-role-nginx.git to pull the latest edge commit of the role from GitHub.

Platforms

The NGINX Ansible role supports all platforms supported by NGINX Open Source, NGINX Plus, the NGINX Amplify agent, and NGINX Unit:

NGINX Open Source

Alpine:
  versions:
    - 3.8
    - 3.9
    - 3.10
    - 3.11
CentOS:
  versions:
    - 6
    - 7
    - 8
Debian:
  versions:
    - stretch
    - buster
FreeBSD:
  versions:
    - 11.2+
    - 12
RedHat:
  versions:
    - 6
    - 7.4+
    - 8
SUSE/SLES:
  versions:
    - 12
    - 15
Ubuntu:
  versions:
    - xenial
    - bionic
    - focal

NGINX Plus

Alpine:
  versions:
    - 3.8
    - 3.9
    - 3.10
    - 3.11
Amazon Linux:
  versions:
    - 2018.03
Amazon Linux 2:
  versions:
    - any
CentOS:
  versions:
    - 6.5+
    - 7.4+
    - 8
Debian:
  versions:
    - stretch
    - buster
FreeBSD:
  versions:
    - 11.2+
    - 12
Oracle Linux:
  versions:
    - 6.5+
    - 7.4+
RedHat:
  versions:
    - 6.5+
    - 7.4+
    - 8
SUSE/SLES:
  versions:
    - 12
    - 15
Ubuntu:
  versions:
    - xenial
    - bionic
    - focal

NGINX Amplify Agent

Amazon Linux:
  versions:
    - 2017.09
CentOS:
  versions:
    - 6
    - 7
Debian:
  versions:
    - jessie
    - stretch
RedHat:
  versions:
    - 6
    - 7
Ubuntu:
  versions:
    - xenial
    - bionic
    - focal

NGINX Unit

Amazon Linux:
  versions:
    - 2018.03
Amazon Linux 2:
  versions:
    - any
CentOS:
  versions:
    - 6
    - 7
    - 8
Debian:
  versions:
    - stretch
    - buster
RedHat:
  versions:
    - 6
    - 7
    - 8
Ubuntu:
  versions:
    - xenial
    - bionic
    - focal

Role Variables

This role has multiple variables. The descriptions and defaults for all these variables can be found in the defaults/main directory in the following files:

Example Playbooks

Working functional playbook examples can be found in the molecule/common directory in the following files:

Do note that if you install this repository via Ansible Galaxy, you will have to replace the role variable in the sample playbooks from ansible-role-nginx to nginxinc.nginx.

Other NGINX Roles

You can find an Ansible role to configure NGINX here

You can find an Ansible role to install and configure NGINX App Protect here

You can find an Ansible collection of roles to install and configure NGINX Controller here

You can find an Ansible role to install NGINX Unit here

License

Apache License, Version 2.0

Author Information

Alessandro Fael Garcia

Grzegorz Dzien

Tom Gamull

© F5 Networks, Inc. 2018 - 2020