blob: ab422d134bb9bcd2889356922f26087d95d2242d [file] [log] [blame]
# During upgrades, can be run modified then run via:
# ansible-playbook -i "host1,host2," upgrade.yml -K
# successively on each phase of rollout.
---
- hosts: all
remote_user: chrome-bot
become_user: root
become: yes
become_method: sudo
tasks:
- name: sudo apt update
apt:
update_cache: yes
- name: Shutdown collectd before upgrade.
shell: pkill -9 collectd
ignore_errors: yes
# May cause a collision issue on upgrade
- name: remove inetutils-ping
apt:
name: inetutils-ping
state: absent
- name: sudo apt upgrade
apt:
force_apt_get: yes
upgrade: safe
# We do a full upgrade here to attempt to remove any additional packages that
# may cause conflicts during the below update. It may be unnecessary.
- name: sudo apt full-upgrade
apt:
upgrade: full
- name: sudo apt autoremove
apt:
autoremove: yes
- name: Enumerate sources.list files.
find:
path: /etc/apt/
recurse: yes
patterns: '*.list'
register: sources_list
- name: update sources.list to buster
replace:
path: "{{ item.path }}"
regexp: 'stretch'
replace: 'buster'
with_list: "{{sources_list.files}}"
- name: sudo apt update
apt:
update_cache: yes
- name: sudo apt upgrade
apt:
upgrade: safe
ignore_errors: yes
- name: sudo apt full-upgrade
apt:
upgrade: full
ignore_errors: yes
- name: reboot the machine
reboot:
msg: "Reboot initiated by Ansible script"
connect_timeout: 5
reboot_timeout: 300
pre_reboot_delay: 0
post_reboot_delay: 30
test_command: uptime