Files
ansible/playbooks/update.yml
2026-02-15 00:20:36 +01:00

46 lines
1.2 KiB
YAML

---
- name: Update all servers (FreeBSD, Debian)
hosts: all
become: yes
gather_facts: yes
tasks:
##################################################
# Debian / Ubuntu
##################################################
- name: Update package cache (Debian/Ubuntu)
apt:
update_cache: yes
when: ansible_facts['os_family'] == "Debian"
- name: Upgrade all packages (Debian/Ubuntu)
apt:
upgrade: dist
register: debian_update
when: ansible_facts['os_family'] == "Debian"
- name: Reboot Debian only if packages changed
reboot:
when:
- ansible_facts['os_family'] == "Debian"
- debian_update is defined
- debian_update.changed
##################################################
# FreeBSD
##################################################
- name: Upgrade all packages and refresh repo cache (FreeBSD)
community.general.pkgng:
name: "*"
state: latest
register: freebsd_update
when: ansible_facts['os_family'] == "FreeBSD"
- name: Reboot FreeBSD only if packages changed
reboot:
when:
- ansible_facts['os_family'] == "FreeBSD"
- freebsd_update is defined
- freebsd_update.changed