46 lines
1.5 KiB
YAML
46 lines
1.5 KiB
YAML
---
|
|
# =============================================================================
|
|
# proxmox_upgrade — main.yml
|
|
# Orchestrates rolling Proxmox cluster upgrade
|
|
# =============================================================================
|
|
|
|
|
|
- name: Proxmox Upgrade | Backup all node configs first
|
|
include_role:
|
|
name: hypervisor_backup_config
|
|
vars:
|
|
pve_config_git_commit_message: "[{{ client_id }}] {{ current_node }} pre-upgrade config backup {{ ansible_date_time.date }}"
|
|
loop: "{{ upgrade_order }}"
|
|
loop_control:
|
|
loop_var: current_node
|
|
|
|
- name: Proxmox Upgrade | Rolling upgrade
|
|
include_tasks: node_upgrade.yml
|
|
loop: "{{ upgrade_order }}"
|
|
loop_control:
|
|
loop_var: current_node
|
|
|
|
|
|
- name: Proxmox Upgrade | Start
|
|
ansible.builtin.debug:
|
|
msg: >-
|
|
Starting Proxmox rolling upgrade for {{ client_name }}
|
|
— {{ upgrade_order | length }} nodes: {{ upgrade_order | join(' → ') }}
|
|
— migration_bulk={{ migration_bulk }}
|
|
— live_migrate_fallback={{ live_migrate_fallback }}
|
|
— migration_restore={{ migration_restore }}
|
|
— ceph_enabled={{ ceph_enabled }}
|
|
|
|
- name: Proxmox Upgrade | Cluster preflight
|
|
include_tasks: preflight.yml
|
|
|
|
- name: Proxmox Upgrade | Rolling upgrade
|
|
include_tasks: node_upgrade.yml
|
|
loop: "{{ upgrade_order }}"
|
|
loop_control:
|
|
loop_var: current_node
|
|
|
|
- name: Proxmox Upgrade | Complete
|
|
ansible.builtin.debug:
|
|
msg: "Proxmox rolling upgrade complete for {{ client_name }} — {{ upgrade_order | length }} nodes upgraded"
|