upgrade.yml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. ---
  2. # input variables:
  3. # - l_docker_upgrade
  4. # - openshift_is_atomic
  5. # - node_config_hook
  6. # - openshift_pkg_version
  7. # - openshift_release
  8. # tasks file for openshift_node_upgrade
  9. - name: stop services for upgrade
  10. import_tasks: upgrade/stop_services.yml
  11. # Ensure actually install latest package.
  12. - name: install docker upgrade rpm
  13. command: "{{ ansible_pkg_mgr }} install -y docker{{ '-' + docker_version }}"
  14. register: result
  15. until: result is succeeded
  16. when:
  17. - l_docker_upgrade is defined
  18. - l_docker_upgrade | bool
  19. - name: Ensure cri-o is updated
  20. package:
  21. name: cri-o
  22. state: latest
  23. when:
  24. - openshift_use_crio | default(False)
  25. register: crio_update
  26. - name: Restart cri-o
  27. systemd:
  28. name: cri-o
  29. state: restarted
  30. when:
  31. - openshift_use_crio | default(False)
  32. - crio_update is changed
  33. - name: install pre-pulled rpms.
  34. import_tasks: upgrade/rpm_upgrade_install.yml
  35. when: not openshift_is_atomic | bool
  36. - include_tasks: "{{ node_config_hook }}"
  37. when: node_config_hook is defined
  38. - import_tasks: upgrade/config_changes.yml
  39. - import_tasks: dnsmasq_install.yml
  40. - import_tasks: dnsmasq.yml
  41. # Restart all services
  42. - import_tasks: upgrade/restart.yml
  43. - name: Approve node certificates when bootstrapping
  44. oc_adm_csr:
  45. nodes: "{{ openshift.node.nodename | lower }}"
  46. timeout: 180
  47. fail_on_timeout: true
  48. delegate_to: "{{ groups.oo_first_master.0 }}"
  49. ignore_errors: true
  50. - name: Wait for node to be ready
  51. oc_obj:
  52. state: list
  53. kind: node
  54. name: "{{ openshift.node.nodename | lower }}"
  55. register: node_output
  56. delegate_to: "{{ groups.oo_first_master.0 }}"
  57. until: node_output.results.returncode == 0 and node_output.results.results[0].status.conditions | selectattr('type', 'match', '^Ready$') | map(attribute='status') | join | bool == True
  58. # Give the node three minutes to come back online.
  59. retries: 36
  60. delay: 5
  61. - import_tasks: journald.yml
  62. - meta: flush_handlers