From 1a9addc537716b1edf5568f3d4c63c057fe6787d Mon Sep 17 00:00:00 2001 From: Hermes Agent service account Date: Tue, 26 May 2026 22:51:59 -0500 Subject: [PATCH] feat: use community.general collection + requirements.yml for semaphore --- ansible/requirements.yml | 19 +---------- ansible/roles/semaphore/tasks/main.yml | 44 +++++++++++--------------- 2 files changed, 19 insertions(+), 44 deletions(-) diff --git a/ansible/requirements.yml b/ansible/requirements.yml index 0d045f7..4576bdf 100755 --- a/ansible/requirements.yml +++ b/ansible/requirements.yml @@ -1,21 +1,4 @@ -# requirements.yml --- collections: - name: community.general - version: 11.4.1 - - # - name: nccurry.openshift - # version: 1.4.0 - - - name: somaz94.ansible_k8s_iac_tool - version: 1.1.6 - - # - name: prometheus.prometheus - # version: 0.27.0 - - - name: kubernetes.core - - - name: community.proxmox - version: 1.4.0 - - - name: effectivelywild.technitium_dns \ No newline at end of file + version: ">=6.0.0" \ No newline at end of file diff --git a/ansible/roles/semaphore/tasks/main.yml b/ansible/roles/semaphore/tasks/main.yml index 5530231..71ff7fb 100644 --- a/ansible/roles/semaphore/tasks/main.yml +++ b/ansible/roles/semaphore/tasks/main.yml @@ -24,36 +24,28 @@ - "{{ semaphore_data_dir }}" - "{{ semaphore_config_dir }}" -- name: Pull Semaphore image - ansible.builtin.command: - cmd: "podman pull {{ semaphore_image }}" - become: true - become_user: "{{ semaphore_user }}" - changed_when: false - - name: Create and start Semaphore container - ansible.builtin.command: - cmd: > - podman run -d --name {{ semaphore_container_name }} - -p {{ semaphore_port }}:3000 - -v {{ semaphore_data_dir }}:/var/lib/semaphore:Z - -v {{ semaphore_config_dir }}:/etc/semaphore:Z - -e SEMAPHORE_DB_TYPE={{ semaphore_db_type }} - -e SEMAPHORE_DB_PATH={{ semaphore_db_path }} - -e SEMAPHORE_ADMIN=admin - -e SEMAPHORE_ADMIN_PASSWORD={{ vault_semaphore_admin_password }} - -e SEMAPHORE_ACCESS_KEY_ENCRYPTION={{ vault_semaphore_access_key_encryption }} - --user {{ semaphore_user }} - {{ semaphore_image }} - become: true - become_user: "{{ semaphore_user }}" - register: container_run - changed_when: container_run.rc == 0 - failed_when: container_run.rc != 0 and 'already in use' not in container_run.stderr + community.general.podman_container: + name: "{{ semaphore_container_name }}" + image: "{{ semaphore_image }}" + state: started + recreate: true + ports: + - "{{ semaphore_port }}:3000" + volumes: + - "{{ semaphore_data_dir }}:/var/lib/semaphore:Z" + - "{{ semaphore_config_dir }}:/etc/semaphore:Z" + env: + SEMAPHORE_DB_TYPE: "{{ semaphore_db_type }}" + SEMAPHORE_DB_PATH: "{{ semaphore_db_path }}" + SEMAPHORE_ADMIN: admin + SEMAPHORE_ADMIN_PASSWORD: "{{ vault_semaphore_admin_password }}" + SEMAPHORE_ACCESS_KEY_ENCRYPTION: "{{ vault_semaphore_access_key_encryption }}" + user: "{{ semaphore_user }}" - name: Generate systemd service for the container ansible.builtin.command: - cmd: "podman generate systemd --name --new --files {{ semaphore_container_name }}" + cmd: podman generate systemd --name --new --files {{ semaphore_container_name }} chdir: /etc/systemd/system creates: "/etc/systemd/system/container-{{ semaphore_container_name }}.service" become: true