diff --git a/roles/ceph-container-common/tasks/fetch_image.yml b/roles/ceph-container-common/tasks/fetch_image.yml index 31100482e0..e1b67c7bca 100644 --- a/roles/ceph-container-common/tasks/fetch_image.yml +++ b/roles/ceph-container-common/tasks/fetch_image.yml @@ -1,201 +1,4 @@ --- -# NOTE (leseb): we must check each inventory group so this will work with collocated daemons -- name: inspect ceph mon container - command: "{{ container_binary }} inspect {{ ceph_mon_container_stat.stdout }}" - changed_when: false - register: ceph_mon_inspect - when: - - mon_group_name in group_names - - ceph_mon_container_stat.get('rc') == 0 - - ceph_mon_container_stat.get('stdout_lines', [])|length != 0 - -- name: inspect ceph osd container - command: "{{ container_binary }} inspect {{ ceph_osd_container_stat.stdout }}" - changed_when: false - register: ceph_osd_inspect - when: - - osd_group_name in group_names - - ceph_osd_container_stat.get('rc') == 0 - - ceph_osd_container_stat.get('stdout_lines', [])|length != 0 - -- name: inspect ceph mds container - command: "{{ container_binary }} inspect {{ ceph_mds_container_stat.stdout }}" - changed_when: false - register: ceph_mds_inspect - when: - - mds_group_name in group_names - - ceph_mds_container_stat.get('rc') == 0 - - ceph_mds_container_stat.get('stdout_lines', [])|length != 0 - -- name: inspect ceph rgw container - command: "{{ container_binary }} inspect {{ ceph_rgw_container_stat.stdout }}" - changed_when: false - register: ceph_rgw_inspect - when: - - rgw_group_name in group_names - - ceph_rgw_container_stat.get('rc') == 0 - - ceph_rgw_container_stat.get('stdout_lines', [])|length != 0 - -- name: inspect ceph mgr container - command: "{{ container_binary }} inspect {{ ceph_mgr_container_stat.stdout }}" - changed_when: false - register: ceph_mgr_inspect - when: - - mgr_group_name in group_names - - ceph_mgr_container_stat.get('rc') == 0 - - ceph_mgr_container_stat.get('stdout_lines', [])|length != 0 - -- name: inspect ceph rbd mirror container - command: "{{ container_binary }} inspect {{ ceph_rbd_mirror_container_stat.stdout }}" - changed_when: false - register: ceph_rbd_mirror_inspect - when: - - rbdmirror_group_name in group_names - - ceph_rbd_mirror_container_stat.get('rc') == 0 - - ceph_rbd_mirror_container_stat.get('stdout_lines', [])|length != 0 - -- name: inspect ceph nfs container - command: "{{ container_binary }} inspect {{ ceph_nfs_container_stat.stdout }}" - changed_when: false - register: ceph_nfs_inspect - when: - - nfs_group_name in group_names - - ceph_nfs_container_stat.get('rc') == 0 - - ceph_nfs_container_stat.get('stdout_lines', [])|length != 0 - -- name: inspect ceph crash container - command: "{{ container_binary }} inspect {{ ceph_crash_container_stat.stdout }}" - changed_when: false - register: ceph_crash_inspect - when: - - ceph_crash_container_stat.get('rc') == 0 - - ceph_crash_container_stat.get('stdout_lines', [])|length != 0 - -# NOTE(leseb): using failed_when to handle the case when the image is not present yet -- name: "inspecting ceph mon container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_mon_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_mon_container_inspect_before_pull - when: - - mon_group_name in group_names - - ceph_mon_inspect.get('rc') == 0 - -- name: "inspecting ceph osd container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_osd_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_osd_container_inspect_before_pull - when: - - osd_group_name in group_names - - ceph_osd_inspect.get('rc') == 0 - -- name: "inspecting ceph rgw container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_rgw_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_rgw_container_inspect_before_pull - when: - - rgw_group_name in group_names - - ceph_rgw_inspect.get('rc') == 0 - -- name: "inspecting ceph mds container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_mds_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_mds_container_inspect_before_pull - when: - - mds_group_name in group_names - - ceph_mds_inspect.get('rc') == 0 - -- name: "inspecting ceph mgr container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_mgr_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_mgr_container_inspect_before_pull - when: - - mgr_group_name in group_names - - ceph_mgr_inspect.get('rc') == 0 - -- name: "inspecting ceph rbd mirror container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_rbd_mirror_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_rbd_mirror_container_inspect_before_pull - when: - - rbdmirror_group_name in group_names - - ceph_rbd_mirror_inspect.get('rc') == 0 - -- name: "inspecting ceph nfs container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_nfs_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_nfs_container_inspect_before_pull - when: - - nfs_group_name in group_names - - ceph_nfs_inspect.get('rc') == 0 - -- name: "inspecting ceph crash container image before pulling" - command: "{{ container_binary }} inspect {{ (ceph_crash_inspect.stdout | from_json)[0].Image }}" - changed_when: false - failed_when: false - register: ceph_crash_container_inspect_before_pull - when: ceph_crash_inspect.get('rc') == 0 - -- name: set_fact ceph_mon_image_repodigest_before_pulling - set_fact: - ceph_mon_image_repodigest_before_pulling: "{{ (ceph_mon_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: - - mon_group_name in group_names - - ceph_mon_container_inspect_before_pull.get('rc') == 0 - -- name: set_fact ceph_osd_image_repodigest_before_pulling - set_fact: - ceph_osd_image_repodigest_before_pulling: "{{ (ceph_osd_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: - - osd_group_name in group_names - - ceph_osd_container_inspect_before_pull.get('rc') == 0 - -- name: set_fact ceph_mds_image_repodigest_before_pulling - set_fact: - ceph_mds_image_repodigest_before_pulling: "{{ (ceph_mds_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: - - mds_group_name in group_names - - ceph_mds_container_inspect_before_pull.get('rc') == 0 - -- name: set_fact ceph_rgw_image_repodigest_before_pulling - set_fact: - ceph_rgw_image_repodigest_before_pulling: "{{ (ceph_rgw_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: - - rgw_group_name in group_names - - ceph_rgw_container_inspect_before_pull.get('rc') == 0 - -- name: set_fact ceph_mgr_image_repodigest_before_pulling - set_fact: - ceph_mgr_image_repodigest_before_pulling: "{{ (ceph_mgr_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: - - mgr_group_name in group_names - - ceph_mgr_container_inspect_before_pull.get('rc') == 0 - -- name: set_fact ceph_crash_image_repodigest_before_pulling - set_fact: - ceph_crash_image_repodigest_before_pulling: "{{ (ceph_crash_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: ceph_crash_container_inspect_before_pull.get('rc') == 0 - -- name: set_fact ceph_rbd_mirror_image_repodigest_before_pulling - set_fact: - ceph_rbd_mirror_image_repodigest_before_pulling: "{{ (ceph_rbd_mirror_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: - - rbdmirror_group_name in group_names - - ceph_rbd_mirror_container_inspect_before_pull.get('rc') == 0 - -- name: set_fact ceph_nfs_image_repodigest_before_pulling - set_fact: - ceph_nfs_image_repodigest_before_pulling: "{{ (ceph_nfs_container_inspect_before_pull.stdout | from_json)[0].Id }}" - when: - - nfs_group_name in group_names - - ceph_nfs_container_inspect_before_pull.get('rc') == 0 - - name: "pulling {{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }} image" command: "{{ timeout_command }} {{ container_binary }} pull {{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}" changed_when: false @@ -251,96 +54,6 @@ HTTPS_PROXY: "{{ ceph_docker_https_proxy | default('') }}" NO_PROXY: "{{ ceph_docker_no_proxy }}" -- name: "inspecting {{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }} image after pulling" - command: "{{ container_binary }} inspect {{ ceph_docker_registry }}/{{ ceph_docker_image }}:{{ ceph_docker_image_tag }}" - changed_when: false - failed_when: false - register: image_inspect_after_pull - -- name: set_fact image_repodigest_after_pulling - set_fact: - image_repodigest_after_pulling: "{{ (image_inspect_after_pull.stdout | from_json)[0].Id }}" - when: image_inspect_after_pull.rc == 0 - -- name: set_fact ceph_mon_image_updated - set_fact: - ceph_mon_image_updated: "{{ ceph_mon_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph mons - when: - - mon_group_name in group_names - - ceph_mon_container_inspect_before_pull.get('rc') == 0 - - ceph_mon_image_repodigest_before_pulling != image_repodigest_after_pulling - -- name: set_fact ceph_osd_image_updated - set_fact: - ceph_osd_image_updated: "{{ ceph_osd_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph osds - when: - - osd_group_name in group_names - - ceph_osd_container_inspect_before_pull.get('rc') == 0 - - ceph_osd_image_repodigest_before_pulling != image_repodigest_after_pulling - -- name: set_fact ceph_mds_image_updated - set_fact: - ceph_mds_image_updated: "{{ ceph_mds_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph mdss - when: - - mds_group_name in group_names - - ceph_mds_container_inspect_before_pull.get('rc') == 0 - - ceph_mds_image_repodigest_before_pulling != image_repodigest_after_pulling - -- name: set_fact ceph_rgw_image_updated - set_fact: - ceph_rgw_image_updated: "{{ ceph_rgw_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph rgws - when: - - rgw_group_name in group_names - - ceph_rgw_container_inspect_before_pull.get('rc') == 0 - - ceph_rgw_image_repodigest_before_pulling != image_repodigest_after_pulling - -- name: set_fact ceph_mgr_image_updated - set_fact: - ceph_mgr_image_updated: "{{ ceph_mgr_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph mgrs - when: - - mgr_group_name in group_names - - ceph_mgr_container_inspect_before_pull.get('rc') == 0 - - ceph_mgr_image_repodigest_before_pulling != image_repodigest_after_pulling - -- name: set_fact ceph_rbd_mirror_image_updated - set_fact: - ceph_rbd_mirror_image_updated: "{{ ceph_rbd_mirror_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph rbdmirrors - when: - - rbdmirror_group_name in group_names - - ceph_rbd_mirror_container_inspect_before_pull.get('rc') == 0 - - ceph_rbd_mirror_image_repodigest_before_pulling != image_repodigest_after_pulling - -- name: set_fact ceph_nfs_image_updated - set_fact: - ceph_nfs_image_updated: "{{ ceph_nfs_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph nfss - when: - - nfs_group_name in group_names - - ceph_nfs_container_inspect_before_pull.get('rc') == 0 - - ceph_nfs_image_repodigest_before_pulling != image_repodigest_after_pulling - -- name: set_fact ceph_crash_image_updated - set_fact: - ceph_crash_image_updated: "{{ ceph_crash_image_repodigest_before_pulling != image_repodigest_after_pulling }}" - changed_when: true - notify: restart ceph crash - when: - - ceph_crash_container_inspect_before_pull.get('rc') == 0 - - ceph_crash_image_repodigest_before_pulling != image_repodigest_after_pulling - - name: export local ceph dev image command: > {{ container_binary }} save -o "/tmp/{{ ceph_docker_username }}-{{ ceph_docker_imagename }}-{{ ceph_docker_image_tag }}.tar"