--- # execute this role - name: "manage proxmox" hosts: "all" become: true serial: 1 tasks: # update cluster - name: "update cluster" tags: "update-cluster" block: # collect proxmox cluster nodes - name: "collect proxmox cluster nodes" set_fact: first_node: "{{ groups['proxmox'] | default([]) | first | default('') }}" last_node: "{{ groups['proxmox'] | default([]) | last | default('') }}" # enter ceph maintenance mode - name: "set ceph enter maintenance mode" ansible.builtin.import_tasks: "tasks/ceph/enter-maint.yaml" when: "inventory_hostname == first_node" # update proxmox cluster - name: "update proxmox cluster nodes" ansible.builtin.import_tasks: "tasks/proxmox/update-node.yaml" # exit ceph maintenance mode - name: "exit ceph maintenance mode" ansible.builtin.import_tasks: "tasks/ceph/exit-maint.yaml" when: "inventory_hostname == last_node"