|
1 |
| -Ansible NGINX Configuration Role |
2 |
| -================================ |
| 1 | +[](https://galaxy.ansible.com/nginxinc/nginx_config) |
| 2 | +[](https://travis-ci.org/nginxinc/ansible-role-nginx-config) |
| 3 | +[](https://opensource.org/licenses/Apache-2.0) |
| 4 | + |
| 5 | +# 👾 *Help make the NGINX config Ansible role better by participating in our [survey](https://forms.office.com/Pages/ResponsePage.aspx?id=L_093Ttq0UCb4L-DJ9gcUKLQ7uTJaE1PitM_37KR881UM0NCWkY5UlE5MUYyWU1aTUcxV0NRUllJSC4u)!* 👾 |
| 6 | + |
| 7 | +# Ansible NGINX Configuration Role |
3 | 8 |
|
4 | 9 | This role configures NGINX Open Source and NGINX Plus on your target host.
|
5 | 10 |
|
6 | 11 | **Note:** This role is still in active development. There may be unidentified issues and the role variables may change as development continues.
|
7 | 12 |
|
8 |
| -Requirements |
9 |
| ------------- |
10 |
| - |
11 |
| -**Ansible** |
| 13 | +## Requirements |
12 | 14 |
|
13 |
| -This role was developed and tested with [maintained](https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html#release-status) versions of Ansible. Backwards compatibility is not guaranteed. |
| 15 | +### Ansible |
14 | 16 |
|
15 |
| -Instructions on how to install Ansible can be found in the [Ansible website](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html). |
| 17 | +* This role is developed and tested with [maintained](https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html#release-status) versions of Ansible. Backwards compatibility is not guaranteed. |
| 18 | +* Instructions on how to install Ansible can be found in the [Ansible website](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html). |
16 | 19 |
|
17 |
| -**Molecule** |
| 20 | +### Molecule |
18 | 21 |
|
19 |
| -Molecule is used to test the various functionailities of the role. Instructions on how to install Molecule can be found in the [Molecule website](https://molecule.readthedocs.io/en/latest/installation.html). |
| 22 | +* Molecule `3.x` is used to test the various functionalities of the role. |
| 23 | +* Instructions on how to install Molecule can be found in the [Molecule website](https://molecule.readthedocs.io/en/latest/installation.html). |
20 | 24 |
|
21 |
| -Installation |
22 |
| ------------- |
| 25 | +## Installation |
23 | 26 |
|
24 |
| -**Ansible Galaxy** |
| 27 | +### Ansible Galaxy |
25 | 28 |
|
26 | 29 | Use `ansible-galaxy install nginxinc.nginx_config` to install the latest stable release of the role on your system.
|
27 | 30 |
|
28 |
| -**Git** |
| 31 | +### Git |
29 | 32 |
|
30 | 33 | Use `git clone https://github.com/nginxinc/ansible-role-nginx-config.git` to pull the latest edge commit of the role from GitHub.
|
31 | 34 |
|
32 |
| -Platforms |
33 |
| ---------- |
| 35 | +## Platforms |
34 | 36 |
|
35 |
| -The NGINX Ansible role supports all platforms supported by [NGINX Open Source](https://nginx.org/en/linux_packages.html#mainline) and [NGINX Plus](https://www.nginx.com/products/technical-specs/): |
| 37 | +The NGINX config Ansible role supports all platforms supported by [NGINX Open Source](https://nginx.org/en/linux_packages.html#mainline) and [NGINX Plus](https://www.nginx.com/products/technical-specs/): |
36 | 38 |
|
37 |
| -**NGINX Open Source** |
| 39 | +### NGINX Open Source |
38 | 40 |
|
39 | 41 | ```yaml
|
40 | 42 | Alpine:
|
@@ -63,14 +65,13 @@ Ubuntu:
|
63 | 65 | - focal
|
64 | 66 | ```
|
65 | 67 |
|
66 |
| -**NGINX Plus** |
| 68 | +### NGINX Plus |
67 | 69 |
|
68 | 70 | ```yaml
|
69 | 71 | Alpine:
|
70 | 72 | - 3.9
|
71 | 73 | - 3.10
|
72 | 74 | - 3.11
|
73 |
| - - 3.12 |
74 | 75 | Amazon Linux:
|
75 | 76 | - 2018.03
|
76 | 77 | Amazon Linux 2:
|
@@ -102,46 +103,47 @@ Ubuntu:
|
102 | 103 | - focal
|
103 | 104 | ```
|
104 | 105 |
|
105 |
| -Role Variables |
106 |
| --------------- |
| 106 | +## Role Variables |
107 | 107 |
|
108 |
| -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: |
| 108 | +This role has multiple variables. The descriptions and defaults for all these variables can be found in the **[`defaults/main/`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/)** folder in the following files: |
109 | 109 |
|
110 |
| -- **[defaults/main/main.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/main.yml):** NGINX simple config variables |
111 |
| -- **[defaults/main/selinux.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/selinux.yml):** Set up SELinux to allow the necessary connections to your NGINX setup |
112 |
| -- **[defaults/main/template.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/template.yml):** NGINX config template variables |
113 |
| -- **[defaults/main/upload.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/upload.yml):** NGINX config/HTML/SSL upload variables |
| 110 | +|Name|Description| |
| 111 | +|----|-----------| |
| 112 | +|**[`main.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/main.yml)**|NGINX simple config variables| |
| 113 | +|**[`selinux.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/selinux.yml)**|Set up SELinux to allow the necessary connections to your NGINX setup| |
| 114 | +|**[`template.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/template.yml)**|NGINX config template variables| |
| 115 | +|**[`upload.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/defaults/main/upload.yml)**|NGINX config/HTML/SSL upload variables| |
114 | 116 |
|
115 |
| -Example Playbooks |
116 |
| ------------------ |
| 117 | +## Example Playbooks |
117 | 118 |
|
118 |
| -Working functional playbook examples can be found in the **`molecule/common/`** directory in the following files: |
| 119 | +Working functional playbook examples can be found in the **[`molecule/`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/)** folder in the following files: |
119 | 120 |
|
120 |
| -- **[molecule/cleanup_module/converge.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/cleanup_module/converge.yml):** Cleanup an NGINX config and configure NGINX supported modules |
121 |
| -- **[molecule/default/converge.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/default/converge.yml):** Use the NGINX config templating variables to create an NGINX config |
122 |
| -- **[molecule/plus/converge.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/plus/converge.yml):** Use the NGINX config templating variables to create an NGINX Plus config |
123 |
| -- **[molecule/stable_push/converge.yml](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/stable_push/converge.yml):** Install NGINX using the stable branch and push a preexisting config from your system to your NGINX instance |
| 121 | +|Name|Description| |
| 122 | +|----|-----------| |
| 123 | +|**[`cleanup_module/converge.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/cleanup_module/converge.yml)**|Cleanup an NGINX config and configure NGINX supported modules| |
| 124 | +|**[`default/converge.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/default/converge.yml)**|Use the NGINX config templating variables to create an NGINX config| |
| 125 | +|**[`plus/converge.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/plus/converge.yml)**|Use the NGINX config templating variables to create an NGINX Plus config| |
| 126 | +|**[`stable_push/converge.yml`](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/molecule/stable_push/converge.yml)**|Install NGINX using the stable branch and push a preexisting config from your system to your NGINX instance| |
124 | 127 |
|
125 | 128 | 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-config` to `nginxinc.nginx_config`.
|
126 | 129 |
|
127 |
| -Other NGINX Roles |
128 |
| ------------------ |
| 130 | +## Other NGINX Ansible Collections and Roles |
| 131 | + |
| 132 | +You can find the Ansible NGINX Core collection of roles to install and configure NGINX Open Source, NGINX Plus, and NGINX App Protect [here](https://github.com/nginxinc/ansible-collection-nginx). |
129 | 133 |
|
130 |
| -You can find an Ansible role to install NGINX [here](https://github.com/nginxinc/ansible-role-nginx) |
| 134 | +You can find the Ansible NGINX role to install NGINX [here](https://github.com/nginxinc/ansible-role-nginx). |
131 | 135 |
|
132 |
| -You can find an Ansible role to help you install and configure NGINX App Protect [here](https://github.com/nginxinc/ansible-role-nginx-app-protect) |
| 136 | +You can find the Ansible NGINX App Protect role to install and configure NGINX App Protect [here](https://github.com/nginxinc/ansible-role-nginx-app-protect). |
133 | 137 |
|
134 |
| -You can find an Ansible collection of roles to help you install and configure NGINX Controller [here](https://github.com/nginxinc/ansible-collection-nginx_controller) |
| 138 | +You can find the Ansible NGINX Controller collection of roles to install and configure NGINX Controller [here](https://github.com/nginxinc/ansible-collection-nginx_controller). |
135 | 139 |
|
136 |
| -You can find an Ansible role to install NGINX Unit [here](https://github.com/nginxinc/ansible-role-nginx-unit) |
| 140 | +You can find the Ansible NGINX Unit role to install NGINX Unit [here](https://github.com/nginxinc/ansible-role-nginx-unit). |
137 | 141 |
|
138 |
| -License |
139 |
| -------- |
| 142 | +## License |
140 | 143 |
|
141 | 144 | [Apache License, Version 2.0](https://github.com/nginxinc/ansible-role-nginx-config/blob/main/LICENSE)
|
142 | 145 |
|
143 |
| -Author Information |
144 |
| ------------------- |
| 146 | +## Author Information |
145 | 147 |
|
146 | 148 | [Alessandro Fael Garcia](https://github.com/alessfg)
|
147 | 149 |
|
|
0 commit comments