adding initial ansible update script

This commit is contained in:
Dan Hamik 2025-04-03 11:27:54 -05:00
commit ce25dff537

48
update-all.yaml Normal file
View File

@ -0,0 +1,48 @@
- hosts: all
# serial: 5
tasks:
- name: gather service facts
service_facts:
- name: check for docker
set_fact:
docker_running: "'docker.service' in ansible_facts.services and ansible_facts.services['docker.service']['state']=='running'"
- name: check for running containers
ansible.builtin.shell: docker ps | grep -v CONTAINER\ ID
register: running_docker
ignore_errors: true
when: docker_running
- name: verify that /docker exists
stat:
path: /docker
register: my_docker
when: running_docker and docker_running
- name: update system
ansible.builtin.apt:
update_cache: yes
autoclean: yes
autoremove: yes
upgrade: yes
- name: pull docker updates
command: find /docker -maxdepth 1 -type d -exec /bin/sh 'cd {}; [ -f .env ] && echo {} && docker compose pull' \;
become: true
become_user: root
when: running_docker and my_docker.stat.exists and docker_running
- name: install docker updates
command: find /docker -maxdepth 1 -type d -exec /bin/sh 'cd {}; [ -f .env ] && echo {} && docker compose up -d' \;
become: true
become_user: root
when: running_docker.stdout and my_docker.stat.exists and docker_running
- name: prune system
command: docker system prune -a -f
become: true
become_user: root
when: running_docker.stdout and my_docker.stat.exists and docker_running