Update ansible/group_vars/all.yml, ansible/roles/base/files/10periodic, ansible/roles/base/files/authorized_keys_administrator, ansible/roles/base/files/authorized_keys_user, ansible/roles/base/files/issue, ansible/roles/base/files/motd, ansible/roles/base/files/sshd_config_secured, ansible/roles/base/files/sshd_config_secured_redhat, ansible/roles/base/tasks/main.yml, ansible/roles/base/tasks/ssh.yml, ansible/roles/base/vars/main.yml, ansible/roles/cloudflare/tasks/main.yml, ansible/roles/k3s/argocd/tasks/main.yml, ansible/roles/k3s/argocd/templates/apps.yaml, ansible/roles/k3s/argocd/templates/argocd.yaml, ansible/roles/k3s/download/tasks/main.yml, ansible/roles/k3s/master/defaults/main.yml, ansible/roles/k3s/master/tasks/main.yml, ansible/roles/k3s/master/templates/content.j2, ansible/roles/k3s/master/templates/k3s.service.j2, ansible/roles/k3s/master/templates/metallb.configmap.j2, ansible/roles/k3s/master/templates/metallb.crds.j2, ansible/roles/k3s/master/templates/metallb.namespace.j2, ansible/roles/k3s/master/templates/vip.rbac.yaml.j2, ansible/roles/k3s/master/templates/vip.yaml.j2, ansible/roles/k3s/node/tasks/main.yml, ansible/roles/k3s/node/templates/k3s.service.j2, ansible/roles/k3s/post/defaults/main.yml, ansible/roles/k3s/post/tasks/main.yml, ansible/roles/k3s/post/templates/metallb.crs.j2, ansible/roles/k3s/prereq/tasks/main.yml, ansible/roles/update/tasks/main.yml, ansible/templates/packages.yml, ansible/ansible.cfg
This commit is contained in:
39
ansible/roles/update/tasks/main.yml
Normal file
39
ansible/roles/update/tasks/main.yml
Normal file
@@ -0,0 +1,39 @@
|
||||
- name: check packages for updates
|
||||
shell: yum list updates | awk 'f;/Updated Packages/{f=1;}' | awk '{ print $1 }'
|
||||
changed_when: updates.stdout_lines | length > 0
|
||||
args:
|
||||
warn: false
|
||||
register: updates
|
||||
- name: display count
|
||||
debug:
|
||||
msg: "Found {{ updates.stdout_lines | length }} packages to be updated:\n\n{{ updates.stdout }}"
|
||||
- when: updates.stdout_lines | length > 0
|
||||
block:
|
||||
- name: install updates using yum
|
||||
yum:
|
||||
name: "*"
|
||||
state: latest
|
||||
- name: install yum-utils
|
||||
package:
|
||||
name: yum-utils
|
||||
- name: check if reboot is required
|
||||
shell: needs-restarting -r
|
||||
failed_when: false
|
||||
register: reboot_required
|
||||
changed_when: false
|
||||
- when: updates.stdout_lines | length > 0 and reboot_required.rc != 0
|
||||
block:
|
||||
- name: reboot the server if required
|
||||
shell: sleep 3; reboot
|
||||
ignore_errors: true
|
||||
changed_when: false
|
||||
async: 1
|
||||
poll: 0
|
||||
- name: wait for server to come back after reboot
|
||||
wait_for_connection:
|
||||
timeout: 600
|
||||
delay: 20
|
||||
register: reboot_result
|
||||
- name: reboot time
|
||||
debug:
|
||||
msg: "The system rebooted in {{ reboot_result.elapsed }} seconds."
|
||||
Reference in New Issue
Block a user