Refactor Ansible tasks and templates for improved consistency and clarity
This commit is contained in:
@@ -1,34 +1,62 @@
|
||||
---
|
||||
|
||||
# ---
|
||||
# Add virtual ftp users
|
||||
# Add virtual ftp users
|
||||
# ---
|
||||
|
||||
- name: "(create-virtual-ftp-user.yml) Verify if virtual ftp user {{ user.name }} exists"
|
||||
command: pure-pw show {{ user.name }}
|
||||
register: pureftpd_virtual_user_exists
|
||||
changed_when: "pureftpd_virtual_user_exists.rc != 0"
|
||||
failed_when:
|
||||
- "pureftpd_virtual_user_exists.rc != 0"
|
||||
- "pureftpd_virtual_user_exists.rc != 16"
|
||||
ignore_errors: true
|
||||
- name: (create-virtual-ftp-user.yml) Verify if virtual ftp user exists for {{ user.name }}
|
||||
ansible.builtin.command: pure-pw show {{ user.name }}
|
||||
register: common_pureftpd_virtual_user_exists
|
||||
changed_when: false
|
||||
failed_when:
|
||||
- common_pureftpd_virtual_user_exists.rc != 0
|
||||
- common_pureftpd_virtual_user_exists.rc != 16
|
||||
loop_control:
|
||||
label: '{{ user.name }}'
|
||||
|
||||
- name: "(create-virtual-ftp-user.yml) Create virtual ftp user {{ user.name }} ."
|
||||
shell: "(echo {{ user.password }}; echo {{ user.password }}) | pure-pw useradd {{ user.name }} -u {{ user.uid | default(pureftpd_virtual_users_user) }} -g {{ user.gid | default(pureftpd_virtual_users_group) }} -d {{ user.homedir }} -n {{ user.quota_files | default('\"\"') }} -N {{ user.quota_size | default('\"\"') }} -t {{ user.bandwidth_dl | default('\"\"') }} -T {{ user.bandwidth_ul | default('\"\"') }} -q {{ user.ratio_ul | default('\"\"') }} -Q {{ user.ratio_dl | default('\"\"') }}"
|
||||
#when: pureftpd_virtual_user_exists.failed is defined and pureftpd_virtual_user_exists.failed
|
||||
when: pureftpd_virtual_user_exists.changed
|
||||
- name: (create-virtual-ftp-user.yml) Create virtual ftp user for {{ user.name }}
|
||||
ansible.builtin.shell:
|
||||
cmd: >-
|
||||
set -o pipefail &&
|
||||
(echo {{ user.password }}; echo {{ user.password }}) |
|
||||
pure-pw useradd {{ user.name }}
|
||||
-u {{ user.uid | default(pureftpd_virtual_users_user) }}
|
||||
-g {{ user.gid | default(pureftpd_virtual_users_group) }}
|
||||
-d {{ user.homedir }}
|
||||
-n {{ user.quota_files | default('""') }}
|
||||
-N {{ user.quota_size | default('""') }}
|
||||
-t {{ user.bandwidth_dl | default('""') }}
|
||||
-T {{ user.bandwidth_ul | default('""') }}
|
||||
-q {{ user.ratio_ul | default('""') }}
|
||||
-Q {{ user.ratio_dl | default('""') }}
|
||||
executable: /bin/bash
|
||||
when: common_pureftpd_virtual_user_exists.rc == 16
|
||||
changed_when: true
|
||||
notify: reload Pure-FTPd users
|
||||
|
||||
- name: "User {{ user.name }}: Update virtual user"
|
||||
command: "pure-pw usermod {{ user.name }} -u {{ user.uid | default(pureftpd_virtual_users_user) }} -g {{ user.gid | default(pureftpd_virtual_users_group) }} -d {{ user.homedir }} -n {{ user.quota_files | default('\"\"') }} -N {{ user.quota_size | default('\"\"') }} -t {{ user.bandwidth_dl | default('\"\"') }} -T {{ user.bandwidth_ul | default('\"\"') }} -q {{ user.ratio_ul | default('\"\"') }} -Q {{ user.ratio_dl | default('\"\"') }}"
|
||||
#when: pureftpd_virtual_user_exists.failed is defined and not pureftpd_virtual_user_exists.failed
|
||||
when: not pureftpd_virtual_user_exists.changed
|
||||
- name: (create-virtual-ftp-user.yml) Update virtual ftp user for {{ user.name }}
|
||||
ansible.builtin.command: >-
|
||||
pure-pw usermod {{ user.name }}
|
||||
-u {{ user.uid | default(pureftpd_virtual_users_user) }}
|
||||
-g {{ user.gid | default(pureftpd_virtual_users_group) }}
|
||||
-d {{ user.homedir }}
|
||||
-n {{ user.quota_files | default('""') }}
|
||||
-N {{ user.quota_size | default('""') }}
|
||||
-t {{ user.bandwidth_dl | default('""') }}
|
||||
-T {{ user.bandwidth_ul | default('""') }}
|
||||
-q {{ user.ratio_ul | default('""') }}
|
||||
-Q {{ user.ratio_dl | default('""') }}
|
||||
when: common_pureftpd_virtual_user_exists.rc == 0
|
||||
changed_when: true
|
||||
notify: reload Pure-FTPd users
|
||||
|
||||
- name: "User {{ user.name }}: Update virtual user password"
|
||||
shell: "(echo {{ user.password }}; echo {{ user.password }}) | pure-pw passwd {{ user.name }}"
|
||||
when: not pureftpd_virtual_user_exists.changed
|
||||
- name: (create-virtual-ftp-user.yml) Update virtual ftp user password for {{ user.name }}
|
||||
ansible.builtin.shell:
|
||||
cmd: >-
|
||||
set -o pipefail &&
|
||||
(echo {{ user.password }}; echo {{ user.password }}) |
|
||||
pure-pw passwd {{ user.name }}
|
||||
executable: /bin/bash
|
||||
when: common_pureftpd_virtual_user_exists.rc == 0
|
||||
changed_when: true
|
||||
notify: reload Pure-FTPd users
|
||||
|
||||
|
||||
Reference in New Issue
Block a user