Merge pull request #41 from nginxinc/(feature)/unit-add-distros
(feature)/unit add distros
This commit is contained in:
commit
e9b8e57566
52
README.md
52
README.md
@ -17,6 +17,7 @@ It supports all platforms supported by [NGINX Open Source](https://nginx.org/en/
|
||||
|
||||
**NGINX Open Source:**
|
||||
|
||||
```yaml
|
||||
CentOS:
|
||||
versions:
|
||||
- 6
|
||||
@ -33,13 +34,28 @@ It supports all platforms supported by [NGINX Open Source](https://nginx.org/en/
|
||||
versions:
|
||||
- trusty
|
||||
- xenial
|
||||
- zesty
|
||||
- artful
|
||||
- bionic
|
||||
SUSE/SLES:
|
||||
versions:
|
||||
- 12
|
||||
FreeBSD:
|
||||
versions:
|
||||
- 10
|
||||
- 11
|
||||
```
|
||||
|
||||
**NGINX Plus:**
|
||||
|
||||
```yaml
|
||||
CentOS:
|
||||
versions:
|
||||
- 6
|
||||
- 7
|
||||
RedHat:
|
||||
versions:
|
||||
- 6
|
||||
- 7
|
||||
Debian:
|
||||
versions:
|
||||
- jessie
|
||||
@ -48,33 +64,27 @@ It supports all platforms supported by [NGINX Open Source](https://nginx.org/en/
|
||||
versions:
|
||||
- trusty
|
||||
- xenial
|
||||
- zesty
|
||||
- artful
|
||||
CentOS:
|
||||
versions:
|
||||
- 6.5
|
||||
- 7
|
||||
RedHat:
|
||||
versions:
|
||||
- 6.5
|
||||
- 7
|
||||
- bionic
|
||||
Oracle Linux:
|
||||
versions:
|
||||
- 6.5
|
||||
- 7
|
||||
Amazon Linux:
|
||||
versions:
|
||||
- 2016.09
|
||||
- 2018.03
|
||||
SUSE/SLES:
|
||||
versions:
|
||||
- 12
|
||||
FreeBSD:
|
||||
versions:
|
||||
- 10.3
|
||||
- 10
|
||||
- 11
|
||||
```
|
||||
|
||||
**NGINX Unit:**
|
||||
|
||||
```yaml
|
||||
CentOS:
|
||||
versions:
|
||||
- 6
|
||||
@ -94,13 +104,20 @@ It supports all platforms supported by [NGINX Open Source](https://nginx.org/en/
|
||||
- bionic
|
||||
Amazon Linux:
|
||||
versions:
|
||||
- 2016.09
|
||||
- 2018.03
|
||||
- 2
|
||||
FreeBSD:
|
||||
versions:
|
||||
- 10
|
||||
- 11
|
||||
```
|
||||
|
||||
Role Variables
|
||||
--------------
|
||||
|
||||
This role has multiple variables. The defaults for all these variables are the following:
|
||||
|
||||
```yaml
|
||||
---
|
||||
# Install NGINX.
|
||||
# Default is true.
|
||||
@ -198,6 +215,7 @@ This role has multiple variables. The defaults for all these variables are the f
|
||||
# Default is false.
|
||||
unit_enable: false
|
||||
unit_modules: null
|
||||
```
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
@ -209,14 +227,17 @@ 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.
|
||||
|
||||
```yaml
|
||||
---
|
||||
- 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.
|
||||
|
||||
```yaml
|
||||
---
|
||||
- hosts: localhost
|
||||
become: true
|
||||
@ -224,17 +245,21 @@ This is a sample playbook file for deploying the Ansible Galaxy NGINX role in a
|
||||
- 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.
|
||||
|
||||
```yml
|
||||
---
|
||||
- hosts: tag_nginx
|
||||
remote_user: root
|
||||
roles:
|
||||
- role: nginxinc.nginx
|
||||
```
|
||||
|
||||
This is a sample playbook file for deploying the Ansible Galaxy NGINX role in a localhost to install NGINX Unit and the PHP/Perl NGINX Unit language modules.
|
||||
|
||||
```yml
|
||||
---
|
||||
- hosts: localhost
|
||||
become: true
|
||||
@ -246,6 +271,7 @@ This is a sample playbook file for deploying the Ansible Galaxy NGINX role in a
|
||||
unit_modules:
|
||||
- unit-php
|
||||
- unit-perl
|
||||
```
|
||||
|
||||
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`.
|
||||
|
||||
|
@ -1,17 +1,20 @@
|
||||
---
|
||||
# Start NGINX
|
||||
- name: "(Handler: All OSs) Start NGINX"
|
||||
service:
|
||||
name: nginx
|
||||
state: started
|
||||
|
||||
# Reload NGINX
|
||||
- name: "(Handler: All OSs) Reload NGINX"
|
||||
service:
|
||||
name: nginx
|
||||
state: reloaded
|
||||
|
||||
- name: "(Handler: All OSs) Start NGINX Unit"
|
||||
- name: "(Handler: Debian/Ubuntu/CentOS/RedHat) Start NGINX Unit"
|
||||
service:
|
||||
name: unit
|
||||
state: started
|
||||
|
||||
- name: "(Handler: FreeBSD) Start NGINX Unit"
|
||||
service:
|
||||
name: unitd
|
||||
state: started
|
||||
|
@ -1,7 +1,8 @@
|
||||
---
|
||||
galaxy_info:
|
||||
author: Alessandro Fael Garcia
|
||||
description: Official Ansible role for NGINX
|
||||
company: NGINX Inc
|
||||
company: NGINX, Inc.
|
||||
|
||||
license: Apache License, Version 2.0
|
||||
|
||||
@ -10,15 +11,14 @@ galaxy_info:
|
||||
platforms:
|
||||
- name: Debian
|
||||
versions:
|
||||
- wheezy
|
||||
- jessie
|
||||
- stretch
|
||||
- name: Ubuntu
|
||||
versions:
|
||||
- precise
|
||||
- trusty
|
||||
- xenial
|
||||
- yakkety
|
||||
- artful
|
||||
- bionic
|
||||
- name: EL
|
||||
versions:
|
||||
- 6
|
||||
@ -26,6 +26,10 @@ galaxy_info:
|
||||
- name: SLES
|
||||
versions:
|
||||
- 12
|
||||
- name: FreeBSD
|
||||
versions:
|
||||
- 10
|
||||
- 11
|
||||
|
||||
galaxy_tags:
|
||||
- nginx
|
||||
|
@ -1,7 +1,16 @@
|
||||
---
|
||||
- name: "(Install: All OSs) Install NGINX Unit Modules"
|
||||
- name: "(Install: Debian/Ubuntu/CentOS/RedHat) Install NGINX Unit Modules"
|
||||
package:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
with_items: "{{ unit_modules }}"
|
||||
notify: "(Handler: All OSs) Start NGINX Unit"
|
||||
when: ansible_os_family != "FreeBSD"
|
||||
notify: "(Handler: Debian/Ubuntu/CentOS/RedHat) Start NGINX Unit"
|
||||
|
||||
- name: "(Install: FreeBSD) Install NGINX Unit Modules"
|
||||
portinstall:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
with_items: "{{ unit_modules }}"
|
||||
when: ansible_os_family == "FreeBSD"
|
||||
notify: "(Handler: FreeBSD) Start NGINX Unit"
|
||||
|
@ -5,11 +5,22 @@
|
||||
- import_tasks: setup-redhat.yml
|
||||
when: ansible_os_family == "RedHat"
|
||||
|
||||
- name: "(Install: All OSs) Install NGINX Unit"
|
||||
- import_tasks: setup-freebsd.yml
|
||||
when: ansible_os_family == "FreeBSD"
|
||||
|
||||
- name: "(Install: Debian/Ubuntu/CentOS/RedHat) Install NGINX Unit"
|
||||
package:
|
||||
name: unit
|
||||
state: present
|
||||
notify: "(Handler: All OSs) Start NGINX Unit"
|
||||
when: ansible_os_family != "FreeBSD"
|
||||
notify: "(Handler: Debian/Ubuntu/CentOS/RedHat) Start NGINX Unit"
|
||||
|
||||
- name: "(Install: FreeBSD) Install NGINX Unit"
|
||||
portinstall:
|
||||
name: unit
|
||||
state: present
|
||||
when: ansible_os_family == "FreeBSD"
|
||||
notify: "(Handler: FreeBSD) Start NGINX Unit"
|
||||
|
||||
- import_tasks: install-modules.yml
|
||||
when: unit_modules is defined and unit_modules
|
||||
|
10
tasks/unit/setup-freebsd.yml
Normal file
10
tasks/unit/setup-freebsd.yml
Normal file
@ -0,0 +1,10 @@
|
||||
---
|
||||
- name: "(Install: FreeBSD) Fetch Ports"
|
||||
command: portsnap fetch --interactive
|
||||
args:
|
||||
creates: /var/db/portsnap/INDEX
|
||||
|
||||
- name: "(Install: FreeBSD) Extract Ports"
|
||||
command: portsnap extract
|
||||
args:
|
||||
creates: /usr/ports
|
@ -11,7 +11,7 @@
|
||||
- name: "(Install: Amazon Linux) Add NGINX Unit Repository"
|
||||
yum_repository:
|
||||
name: unit
|
||||
baseurl: https://packages.nginx.org/unit/amzn/$releasever/$basearch/
|
||||
baseurl: https://packages.nginx.org/unit/amzn{{ (ansible_distribution_version == "2") | ternary('2', '') }}/$releasever/$basearch/
|
||||
description: NGINX Unit Repository
|
||||
enabled: yes
|
||||
gpgcheck: yes
|
||||
|
Loading…
Reference in New Issue
Block a user