31 lines
1.0 KiB
YAML
31 lines
1.0 KiB
YAML
---
|
|
- name: Local Loopback Deployment Operations
|
|
hosts: minipc
|
|
gather_facts: false
|
|
tasks:
|
|
- name: Sync GitOps stacks to target machine
|
|
ansible.posix.synchronize:
|
|
src: "{{ playbook_dir }}/docker/stacks/"
|
|
dest: /opt/homelab/stacks/
|
|
archive: yes
|
|
delete: no
|
|
recursive: yes
|
|
rsync_opts:
|
|
- "--exclude=.git"
|
|
- "--exclude=.gitignore"
|
|
|
|
- name: Identify all docker-compose stack directories
|
|
ansible.builtin.find:
|
|
paths: /opt/homelab/stacks
|
|
file_type: file
|
|
patterns: "docker-compose.yml"
|
|
recurse: yes
|
|
register: compose_files
|
|
|
|
- name: Apply Docker Compose configurations
|
|
ansible.builtin.command: docker compose up -d --remove-orphans
|
|
args:
|
|
chdir: "{{ item.path | dirname }}"
|
|
loop: "{{ compose_files.files }}"
|
|
register: compose_results
|
|
changed_when: "'Started' in compose_results.stdout or 'Created' in compose_results.stdout or 'Recreated' in compose_results.stdout" |