feat: add mount point check for /mnt/services and conditionally update repository
Some checks failed
Nix Format Check / check-format (push) Failing after 38s
Some checks failed
Nix Format Check / check-format (push) Failing after 38s
This commit is contained in:
@@ -2,10 +2,16 @@
|
|||||||
ansible.builtin.package:
|
ansible.builtin.package:
|
||||||
name:
|
name:
|
||||||
- openssh-server
|
- openssh-server
|
||||||
- docker.io
|
|
||||||
state: present
|
state: present
|
||||||
become: true
|
become: true
|
||||||
|
|
||||||
|
- name: Check if /mnt/services is a mount point
|
||||||
|
ansible.builtin.shell: mountpoint -q /mnt/services || echo "not_mounted"
|
||||||
|
register: mnt_services_check
|
||||||
|
changed_when: false
|
||||||
|
ignore_errors: true
|
||||||
|
become: true
|
||||||
|
|
||||||
- name: Update/Checkout /mnt/services repository
|
- name: Update/Checkout /mnt/services repository
|
||||||
ansible.builtin.git:
|
ansible.builtin.git:
|
||||||
repo: "https://git.mvl.sh/vleeuwenmenno/services.git"
|
repo: "https://git.mvl.sh/vleeuwenmenno/services.git"
|
||||||
@@ -15,6 +21,7 @@
|
|||||||
become: true
|
become: true
|
||||||
register: git_result
|
register: git_result
|
||||||
changed_when: git_result.changed
|
changed_when: git_result.changed
|
||||||
|
when: mnt_services_check.rc == 0
|
||||||
|
|
||||||
- name: Ensure /mnt/services ownership to users
|
- name: Ensure /mnt/services ownership to users
|
||||||
ansible.builtin.file:
|
ansible.builtin.file:
|
||||||
@@ -23,29 +30,4 @@
|
|||||||
recurse: true
|
recurse: true
|
||||||
state: directory
|
state: directory
|
||||||
become: true
|
become: true
|
||||||
|
when: mnt_services_check.rc == 0
|
||||||
- name: Find all docker-compose.yml files in /mnt/services subdirectories
|
|
||||||
ansible.builtin.find:
|
|
||||||
paths: /mnt/services
|
|
||||||
patterns: docker-compose.yml
|
|
||||||
recurse: true
|
|
||||||
register: docker_compose_files
|
|
||||||
become: true
|
|
||||||
|
|
||||||
- name: Pull latest Docker images for each service
|
|
||||||
ansible.builtin.command:
|
|
||||||
cmd: docker compose pull
|
|
||||||
chdir: "{{ item.path | dirname }}"
|
|
||||||
loop: "{{ docker_compose_files.files }}"
|
|
||||||
become: true
|
|
||||||
register: docker_pull_results
|
|
||||||
changed_when: docker_pull_results.rc == 0 and (docker_pull_results.stdout | default('') is search('Pulling|Downloaded'))
|
|
||||||
|
|
||||||
- name: Restart Docker services with updated images
|
|
||||||
ansible.builtin.command:
|
|
||||||
cmd: docker compose up -d
|
|
||||||
chdir: "{{ item.path | dirname }}"
|
|
||||||
loop: "{{ docker_compose_files.files }}"
|
|
||||||
become: true
|
|
||||||
register: docker_up_results
|
|
||||||
changed_when: docker_up_results.rc == 0 and (docker_up_results.stdout | default('') is search('Creating|Recreating'))
|
|
||||||
|
Reference in New Issue
Block a user