fix: use raw podman commands (no external collections required)
This commit is contained in:
@@ -24,28 +24,36 @@
|
|||||||
- "{{ semaphore_data_dir }}"
|
- "{{ semaphore_data_dir }}"
|
||||||
- "{{ semaphore_config_dir }}"
|
- "{{ semaphore_config_dir }}"
|
||||||
|
|
||||||
- name: Create and start Semaphore container
|
- name: Pull Semaphore image
|
||||||
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 Semaphore
|
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: podman generate systemd --name --new --files {{ semaphore_container_name }}
|
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
|
||||||
|
|
||||||
|
- name: Generate systemd service for the container
|
||||||
|
ansible.builtin.command:
|
||||||
|
cmd: "podman generate systemd --name --new --files {{ semaphore_container_name }}"
|
||||||
chdir: /etc/systemd/system
|
chdir: /etc/systemd/system
|
||||||
creates: "/etc/systemd/system/container-{{ semaphore_container_name }}.service"
|
creates: "/etc/systemd/system/container-{{ semaphore_container_name }}.service"
|
||||||
become: true
|
become: true
|
||||||
|
|||||||
Reference in New Issue
Block a user