upgrade.yml 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. ---
  2. - name: Pre-upgrade checks
  3. hosts: localhost
  4. connection: local
  5. gather_facts: no
  6. tasks:
  7. - fail:
  8. msg: >
  9. Detected no workers in inventory. Please add hosts to the
  10. workers host group to upgrade nodes
  11. when: groups.workers | default([]) | length == 0
  12. - name: upgrade nodes
  13. hosts: workers
  14. serial: 1
  15. tasks:
  16. - block:
  17. - debug:
  18. msg: "Running openshift_node_pre_cordon_hook {{ openshift_node_pre_cordon_hook }}"
  19. - include_tasks: "{{ openshift_node_pre_cordon_hook }}"
  20. when: openshift_node_pre_cordon_hook is defined
  21. - name: Cordon node prior to upgrade
  22. command: >
  23. oc adm cordon {{ item | lower }}
  24. --config={{ openshift_kubeconfig_path }}
  25. delegate_to: localhost
  26. with_items: "{{ ansible_play_batch }}"
  27. - name: Drain node prior to upgrade
  28. command: >
  29. oc adm drain {{ item | lower }}
  30. --config={{ openshift_kubeconfig_path }}
  31. --force --delete-local-data --ignore-daemonsets
  32. delegate_to: localhost
  33. with_items: "{{ ansible_play_batch }}"
  34. # Run the openshift_node_pre_upgrade_hook if defined
  35. - block:
  36. - debug:
  37. msg: "Running node openshift_node_pre_upgrade_hook {{ openshift_node_pre_upgrade_hook }}"
  38. - include_tasks: "{{ openshift_node_pre_upgrade_hook }}"
  39. when: openshift_node_pre_upgrade_hook is defined
  40. # Upgrade Node
  41. - import_role:
  42. name: openshift_node
  43. vars:
  44. openshift_node_package_state: latest
  45. # Run the openshift_node_pre_uncordon_hook if defined
  46. - block:
  47. - debug:
  48. msg: "Running openshift_node_pre_uncordon_hook {{ openshift_node_pre_uncordon_hook }}"
  49. - include_tasks: "{{ openshift_node_pre_uncordon_hook }}"
  50. when: openshift_node_pre_uncordon_hook is defined
  51. - name: Uncordon node after upgrade
  52. command: >
  53. oc adm uncordon {{ item | lower }}
  54. --config={{ openshift_kubeconfig_path }}
  55. delegate_to: localhost
  56. with_items: "{{ ansible_play_batch }}"
  57. # Run the openshift_node_post_upgrade_hook if defined
  58. - block:
  59. - debug:
  60. msg: "Running node openshift_node_post_upgrade_hook {{ openshift_node_post_upgrade_hook }}"
  61. - include_tasks: "{{ openshift_node_post_upgrade_hook }}"
  62. when: openshift_node_post_upgrade_hook is defined