refactor(semaphore): remove unreliable admin user creation from role

Initial admin user must now be created manually after first deployment
This commit is contained in:
Hermes Agent service account
2026-05-27 22:20:43 -05:00
parent cf7c2a1436
commit 4e0b4fa049

View File

@@ -77,92 +77,3 @@
name: "container-{{ semaphore_container_name }}.service"
state: started
enabled: true
- name: Check if admin user already exists
ansible.builtin.command:
cmd: "podman exec {{ semaphore_container_name }} semaphore user list"
register: semaphore_user_list
changed_when: false
failed_when: false
no_log: true
- name: Create initial admin user
ansible.builtin.command:
cmd: >
podman exec {{ semaphore_container_name }} semaphore user add --admin
--login {{ semaphore_admin_user }}
--name "{{ semaphore_admin_name }}"
--email {{ semaphore_admin_email }}
--password {{ semaphore_admin_password | default(vault_semaphore_admin_password) }}
register: create_admin_result
changed_when: create_admin_result.rc == 0
failed_when: create_admin_result.rc != 0 and 'already exists' not in create_admin_result.stderr | default('')
when:
- semaphore_admin_password is defined or vault_semaphore_admin_password is defined
- semaphore_admin_user not in semaphore_user_list.stdout
no_log: true
- name: Force delete admin user if requested
ansible.builtin.command:
cmd: "podman exec {{ semaphore_container_name }} semaphore user delete --login {{ semaphore_admin_user }}"
register: delete_admin_result
failed_when: false
changed_when: delete_admin_result.rc == 0
when: semaphore_force_admin_user | bool
no_log: true
- name: Create initial admin user (forced)
ansible.builtin.command:
cmd: >
podman exec {{ semaphore_container_name }} semaphore user add --admin
--login {{ semaphore_admin_user }}
--name "{{ semaphore_admin_name }}"
--email {{ semaphore_admin_email }}
--password {{ semaphore_admin_password | default(vault_semaphore_admin_password) }}
register: create_admin_result
changed_when: create_admin_result.rc == 0
failed_when: create_admin_result.rc != 0 and 'already exists' not in create_admin_result.stderr | default('')
when: semaphore_force_admin_user | bool
no_log: true
- name: Create initial admin user
ansible.builtin.command:
cmd: >
podman exec {{ semaphore_container_name }} semaphore user add --admin
--login {{ semaphore_admin_user }}
--name "{{ semaphore_admin_name }}"
--email {{ semaphore_admin_email }}
--password {{ semaphore_admin_password | default(vault_semaphore_admin_password) }}
register: create_admin_result
changed_when: create_admin_result.rc == 0
failed_when: create_admin_result.rc != 0 and 'already exists' not in create_admin_result.stderr
when:
- semaphore_admin_password is defined or vault_semaphore_admin_password is defined or vault_semaphore_admin_password is defined
- semaphore_admin_user not in semaphore_user_list.stdout
no_log: true
- name: Force delete admin user if requested
ansible.builtin.command:
cmd: "podman exec {{ semaphore_container_name }} semaphore user delete --login {{ semaphore_admin_user }}"
register: delete_admin_result
failed_when: false
changed_when: delete_admin_result.rc == 0
when:
- semaphore_force_admin_user | bool
- semaphore_admin_user in semaphore_user_list.stdout
no_log: true
- name: Create initial admin user (forced)
ansible.builtin.command:
cmd: >
podman exec {{ semaphore_container_name }} semaphore user add --admin
--login {{ semaphore_admin_user }}
--name "{{ semaphore_admin_name }}"
--email {{ semaphore_admin_email }}
--password {{ semaphore_admin_password | default(vault_semaphore_admin_password) }}
register: create_admin_result
changed_when: create_admin_result.rc == 0
failed_when: create_admin_result.rc != 0
when:
- semaphore_force_admin_user | bool
- semaphore_admin_password is defined or vault_semaphore_admin_password is defined or vault_semaphore_admin_password is defined
no_log: true