Create option to delete local git user

This commit is contained in:
L3D 2024-04-07 21:48:40 +02:00
parent f5aaa880be
commit 9de97250c6
No known key found for this signature in database
GPG Key ID: AD65B920933B4B20
3 changed files with 36 additions and 10 deletions

View File

@ -33,6 +33,7 @@ gitea_users: []
# email: "johndoe@example.com"
# admin: false
# must_change_password: true
# state: present
# Overall (DEFAULT)
# -> https://docs.gitea.io/en-us/config-cheat-sheet/#overall-default

View File

@ -1,4 +1,24 @@
---
- name: "Create config and data directory"
become: true
ansible.builtin.file:
path: "{{ item }}"
state: directory
owner: "{{ gitea_user }}"
group: "{{ gitea_group }}"
mode: "u=rwX,g=rX"
recurse: true
loop:
- "{{ gitea_user_home }}"
- "{{ gitea_home }}"
- "{{ gitea_home }}/data"
- "{{ gitea_custom }}"
- "{{ gitea_custom }}/https"
- "{{ gitea_custom }}/mailer"
- "{{ gitea_home }}/indexers"
- "{{ gitea_home }}/log"
- "{{ gitea_repository_root }}"
- name: "Create config and data directory"
become: true
ansible.builtin.file:
@ -10,12 +30,3 @@
recurse: true
loop:
- "{{ gitea_configuration_path }}"
- "{{ gitea_user_home }}"
- "{{ gitea_home }}"
- "{{ gitea_home }}/data"
- "{{ gitea_custom }}"
- "{{ gitea_custom }}/https"
- "{{ gitea_custom }}/mailer"
- "{{ gitea_home }}/indexers"
- "{{ gitea_home }}/log"
- "{{ gitea_repository_root }}"

View File

@ -18,5 +18,19 @@
- '"successfully created" not in _gitearesult.stdout'
changed_when:
- '"successfully created!" in _gitearesult.stdout'
when: "_giteausers is defined and item.name not in _giteausers.stdout"
when: "_giteausers is defined and item.name not in _giteausers.stdout and item.state | default('present') == 'present'"
loop: "{{ gitea_users }}"
- name: Use gitea cli to delete user
become: true
ansible.builtin.command: |
su - {{ gitea_user }} -c \
'{{ gitea_full_executable_path }} -c {{ gitea_configuration_path }}/gitea.ini \
admin user delete --username "{{ item.name }}"'
register: _giteadelresult
failed_when:
- '"error" in _giteadelresult.stdout'
changed_when:
"_giteausers is defined and item.name in _giteausers.stdout"
when: "_giteausers is defined and item.name in _giteausers.stdout and item.state | default('present') == 'absent'"
loop: "{{ gitea_users }}"