Refactor Ansible tasks and templates for improved consistency and clarity

This commit is contained in:
2026-07-31 02:24:42 +02:00
parent 81ef678904
commit 46327da2ac
52 changed files with 1679 additions and 1461 deletions
@@ -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