feat(semaphore): install Ansible collections via bind-mounted host directory

- New tasks/collections.yml installs collections from defaults list
  into /opt/semaphore/ansible-collections on the host
- semaphore.container.j2: bind-mounts that dir into the container at
  /home/semaphore/.ansible/collections (read-only)
- defaults/main.yml: semaphore_collections_dir + semaphore_ansible_collections
  list (containers.podman, effectivelywild.technitium_dns)
- main.yml: collections task wired in after semaphore.yml, before verify
- Collections survive container restarts/rebuilds without image changes
- Re-run with --tags collections to add new collections without full redeploy
This commit is contained in:
Hermes Agent service account
2026-06-07 16:44:50 -05:00
parent 0212f0fdd2
commit 8627b00ed8
4 changed files with 53 additions and 0 deletions

View File

@@ -31,6 +31,10 @@
ansible.builtin.import_tasks: semaphore.yml
tags: [semaphore]
- name: Install Ansible collections for Semaphore
ansible.builtin.import_tasks: collections.yml
tags: [semaphore, collections]
- name: Verify Semaphore is reachable
ansible.builtin.import_tasks: verify.yml
tags: [semaphore, verify]