ansible-role-nginx/tasks/modules/install-modules.yml

37 lines
2.2 KiB
YAML
Raw Normal View History

---
2020-09-19 17:32:17 +02:00
- name: (CentOS) Install GeoIP dependencies
2020-09-08 00:44:54 +02:00
yum:
name: epel-release
when:
2020-09-15 21:27:06 +02:00
- ansible_facts['distribution'] == "CentOS"
2020-09-08 00:44:54 +02:00
- '"geoip" in nginx_modules'
- nginx_install_epel_release | bool
- name: Setup NGINX modules
2020-09-08 00:44:54 +02:00
package:
name: "nginx-{{ (nginx_type == 'plus') | ternary('plus-', '') }}module-{{ item.name | default(item) }}\
{{ item.version | default(nginx_version) | default('') }}{{ (nginx_repository is not defined and ansible_facts['os_family'] == 'Alpine' and nginx_type != 'plus') | ternary('@nginx', '') }}"
state: "{{ item.state | default('present') }}"
2020-09-08 00:44:54 +02:00
loop: "{{ nginx_modules }}"
when:
- (item.name | default(item) in nginx_modules_list and nginx_type == 'opensource')
or (item.name | default(item) in nginx_plus_modules_list and nginx_type == 'plus')
- not (item.name | default(item) == "auth-spnego")
2020-09-15 21:27:06 +02:00
or not (ansible_facts['os_family'] == "Alpine" and (ansible_facts['distribution_version'] | regex_search('^[0-9]+\\.[0-9]+') is version('3.8', '==')))
- not (item.name | default(item) == "brotli")
2020-09-15 21:27:06 +02:00
or not ((ansible_facts['os_family'] == "Alpine")
or (ansible_facts['distribution'] == "Amazon")
or (ansible_facts['os_family'] == "Debian" and ansible_facts['distribution_major_version'] is version('9', '=='))
or (ansible_facts['distribution'] == "OracleLinux")
or (ansible_facts['os_family'] == "RedHat" and ansible_facts['distribution_major_version'] is version('8', '<'))
or (ansible_facts['os_family'] == "Suse" and ansible_facts['distribution_major_version'] is version('12', '<')))
- not (item.name | default(item) == "geoip")
or not ((ansible_facts['os_family'] == "FreeBSD")
or (ansible_facts['os_family'] == "RedHat" and ansible_facts['distribution_major_version'] is version('8', '==')))
- not (item.name | default(item) == "geoip2")
or not ((ansible_facts['distribution'] == 'Amazon')
or (ansible_facts['os_family'] == "Suse"))
- not (item.name | default(item) == "opentracing")
or not ((ansible_facts['distribution'] == 'Amazon')
or (ansible_facts['os_family'] == "Suse" and ansible_facts['distribution_major_version'] is version('12', '==')))