ansible-role-nginx/tasks/basic-auth.yml

29 lines
1.4 KiB
YAML

---
- name: basic-auth | Manage the basic auth username and password on deb systems
when:
- ansible_distribution_file_variety == "Debian"
- ansible_distribution_version is version_compare('18.04', '>=')
- nginx_basic_auth
tags: nginx
block:
- name: basic-auth |Install the python passlib library on deb based distributions
apt: pkg=python3-passlib state=present cache_valid_time=3600
- name: basic-auth |Create the htpasswd file needed by the basic auth
htpasswd: path={{ item.file | default ('/etc/nginx/htpasswd') }} name={{ item.name }} password={{ item.pwd }} state={{ item.state | default('present') }} crypt_scheme={{ item.crypt | default('sha256_crypt') }}
with_items: '{{ nginx_basic_auth_users }}'
- name: basic-auth | Manage the basic auth username and password on EL systems
when:
- ansible_distribution_file_variety == "RedHat"
- nginx_basic_auth
tags: nginx
block:
- name: basic-auth |Install the python passlib library on RH based distributions
yum: pkg=python-passlib state=present
- name: basic-auth |Create the htpasswd file needed by the basic auth
htpasswd: path={{ item.file | default ('/etc/nginx/htpasswd') }} name={{ item.name }} password={{ item.pwd }} state={{ item.state | default('present') }} crypt_scheme={{ item.crypt | default('sha256_crypt') }}
with_items: '{{ nginx_basic_auth_users }}'