Use nginx role with custom nginx.conf
support
This commit is contained in:
parent
64f9484b16
commit
65ac14c18b
23 changed files with 378 additions and 115 deletions
64
playbooks/roles/nginx/meta/argument_specs.yaml
Normal file
64
playbooks/roles/nginx/meta/argument_specs.yaml
Normal file
|
@ -0,0 +1,64 @@
|
|||
argument_specs:
|
||||
main:
|
||||
options:
|
||||
nginx__version_spec:
|
||||
description: >-
|
||||
The version specification to use for installing the `nginx` package. The
|
||||
provided version specification will be used like the following: `nginx={{
|
||||
nginx__version_spec }}*`. This makes it possible to e.g. specify
|
||||
until a minor version (like `1.3.`) and then have patch versions be
|
||||
installed automatically (like `1.3.1` and so on).
|
||||
type: str
|
||||
required: true
|
||||
nginx__deploy_redirect_conf:
|
||||
description: >-
|
||||
Whether or not to deploy a `redirect.conf` to
|
||||
`/etc/nginx/conf.d/redirect.conf`.
|
||||
type: bool
|
||||
required: false
|
||||
default: true
|
||||
nginx__deploy_tls_conf:
|
||||
description: >-
|
||||
Whether or not to deploy a `tls.conf` to `/etc/nginx/conf.d/tls.conf`.
|
||||
type: bool
|
||||
required: false
|
||||
default: true
|
||||
nginx__configurations:
|
||||
description: A list of nginx configurations.
|
||||
type: list
|
||||
elements: dict
|
||||
required: false
|
||||
default: [ ]
|
||||
options:
|
||||
name:
|
||||
description: >-
|
||||
The name of the configuration file, where the configuration should
|
||||
be deployed to. The file will be placed under `/etc/nginx/conf.d/`
|
||||
and `.conf` will be appended to the given name. So in the end the
|
||||
path will be like this: `/etc/nginx/conf.d/\{\{ name \}\}.conf`.
|
||||
Note that the names `tls` and `redirect` aren't allowed.
|
||||
type: str
|
||||
required: true
|
||||
content:
|
||||
description: The content of the configuration.
|
||||
type: str
|
||||
required: true
|
||||
nginx__use_custom_nginx_conf:
|
||||
description: >-
|
||||
Whether or not to use a custom `/etc/nginx/nginx.conf`. If set to
|
||||
true, you must provide a custom `nginx.conf` via
|
||||
`nginx__custom_nginx_conf`.
|
||||
type: bool
|
||||
required: false
|
||||
default: false
|
||||
nginx__custom_nginx_conf:
|
||||
description: >-
|
||||
The value for a `nginx.conf` to be placed at `/etc/nginx/nginx.conf`.
|
||||
You must set `nginx__use_custom_nginx_conf` to true for this value to
|
||||
be used.
|
||||
You should probably make sure that your custom `nginx.conf` still
|
||||
includes `/etc/nginx/conf.d/*.conf` so that the configuration provided
|
||||
using `nginx__configurations` still work.
|
||||
type: str
|
||||
required: false
|
||||
default: ""
|
|
@ -1,20 +0,0 @@
|
|||
---
|
||||
argument_specs:
|
||||
main:
|
||||
options:
|
||||
nginx__enable_https_redirect:
|
||||
description: Redirect HTTP traffic to HTTPS
|
||||
type: bool
|
||||
required: false
|
||||
nginx__configs:
|
||||
description: Configuration files to add to /etc/nginx/conf.d/
|
||||
type: list
|
||||
elements: dict
|
||||
required: false
|
||||
options:
|
||||
name:
|
||||
description: Name of the config file without file extension
|
||||
type: str
|
||||
content:
|
||||
description: Content of the config file
|
||||
type: str
|
8
playbooks/roles/nginx/meta/main.yaml
Normal file
8
playbooks/roles/nginx/meta/main.yaml
Normal file
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
dependencies:
|
||||
- role: distribution_check
|
||||
vars:
|
||||
distribution_check__supported_distributions:
|
||||
- name: Debian
|
||||
versions:
|
||||
- "11"
|
|
@ -1,16 +0,0 @@
|
|||
dependencies:
|
||||
- role: distribution_check
|
||||
vars:
|
||||
distribution_check__supported_distributions:
|
||||
- name: Debian
|
||||
versions:
|
||||
- "10"
|
||||
- "11"
|
||||
- role: add_apt_repository
|
||||
vars:
|
||||
add_apt_repository__https_repo: false
|
||||
add_apt_repository__keyring_url: https://nginx.org/keys/nginx_signing.key
|
||||
add_apt_repository__keyring_path: /usr/share/keyrings/nginx-archive-keyring.gpg
|
||||
add_apt_repository__repo: deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg]
|
||||
http://nginx.org/packages/{{ ansible_facts.distribution | lower }} {{ ansible_facts.lsb.codename }} nginx
|
||||
add_apt_repository__filename: nginx.list
|
Loading…
Add table
Add a link
Reference in a new issue