63 lines
2.0 KiB
YAML
63 lines
2.0 KiB
YAML
---
|
|
- name: Pre-Upgrade-Check (zypper)
|
|
shell: zypper list-updates || true
|
|
register: sles_check
|
|
changed_when: false
|
|
|
|
- name: Kernel-Version vor Upgrade sichern
|
|
shell: uname -r
|
|
register: kernel_before
|
|
changed_when: false
|
|
|
|
- name: Upgrade durchführen (zypper, full)
|
|
zypper:
|
|
name: '*'
|
|
state: latest
|
|
extra_args: '--non-interactive'
|
|
register: upgrade_result
|
|
when: not upgrade_dry_run and not upgrade_security_only
|
|
ignore_errors: true
|
|
|
|
- name: Upgrade durchführen (zypper, nur Security)
|
|
command: zypper --non-interactive patch --category security
|
|
register: upgrade_result
|
|
when: not upgrade_dry_run and upgrade_security_only
|
|
ignore_errors: true
|
|
|
|
- name: Logge Fehler beim Upgrade (SLES)
|
|
copy:
|
|
content: "Upgrade-Fehler: {{ upgrade_result.stderr | default(upgrade_result.msg | default('Unbekannter Fehler')) }}"
|
|
dest: "{{ log_dir }}/sles_upgrade_error_{{ inventory_hostname }}.log"
|
|
when: upgrade_result is failed
|
|
|
|
- name: Setze Rollback-Flag, falls Upgrade fehlschlägt
|
|
set_fact:
|
|
rollback: true
|
|
when: upgrade_result is failed
|
|
|
|
- name: Breche Playbook ab, wenn Upgrade fehlschlägt
|
|
fail:
|
|
msg: "Upgrade fehlgeschlagen, Rollback wird empfohlen! Siehe Log: {{ log_dir }}/sles_upgrade_error_{{ inventory_hostname }}.log"
|
|
when: upgrade_result is failed
|
|
|
|
- name: Logge Upgrade-Output (SLES)
|
|
copy:
|
|
content: "{{ sles_check.stdout }}"
|
|
dest: "{{ log_dir }}/sles_upgrade_check.log"
|
|
when: upgrade_result is not failed
|
|
|
|
- name: Kernel-Version nach Upgrade sichern
|
|
shell: uname -r
|
|
register: kernel_after
|
|
changed_when: false
|
|
when: upgrade_result is not failed
|
|
|
|
- name: Prüfe, ob Kernel-Upgrade erfolgt ist und setze Reboot nötig
|
|
set_fact:
|
|
reboot_after_upgrade: true
|
|
when: upgrade_result is not failed and (kernel_before.stdout != kernel_after.stdout)
|
|
|
|
- name: Hinweis auf SLE-Upgrade-Tool
|
|
debug:
|
|
msg: "Für Major Upgrades (z.B. SLES 12->15) empfiehlt SUSE das Tool 'SUSEConnect' und 'zypper migration'. Siehe https://documentation.suse.com/sles/15-SP4/html/SLES-all/cha-upgrade.html"
|