diff --git a/Ansible/Playbooks/Update/readme.md b/Ansible/Playbooks/Update/readme.md new file mode 100644 index 0000000..73f9024 --- /dev/null +++ b/Ansible/Playbooks/Update/readme.md @@ -0,0 +1,7 @@ +# Add to Hosts File (change ansible_user if required) +``` +[all:vars] +ansible_user='ubuntu' +ansible_become=yes +ansible_become_method=sudo +``` \ No newline at end of file diff --git a/Ansible/Playbooks/Update/update.yml b/Ansible/Playbooks/Update/update.yml new file mode 100644 index 0000000..f1df4dd --- /dev/null +++ b/Ansible/Playbooks/Update/update.yml @@ -0,0 +1,23 @@ +--- +- hosts: all + become: true + tasks: + - name: Update apt repo and cache on all Debian/Ubuntu boxes + apt: update_cache=yes force_apt_get=yes cache_valid_time=3600 + + - name: Upgrade all packages on servers + apt: upgrade=dist force_apt_get=yes + + - name: Check if a reboot is needed on all servers + register: reboot_required_file + stat: path=/var/run/reboot-required get_md5=no + + - name: Reboot the box if kernel updated + reboot: + msg: "Reboot initiated by Ansible for kernel updates" + connect_timeout: 5 + reboot_timeout: 300 + pre_reboot_delay: 0 + post_reboot_delay: 30 + test_command: uptime + when: reboot_required_file.stat.exists \ No newline at end of file