From 3caf2186c7dfae0c3f573f05348c886da88a3fb2 Mon Sep 17 00:00:00 2001 From: Alex Schultz Date: Fri, 20 Dec 2019 14:34:52 -0700 Subject: [PATCH] Fetch containers early Rather than wait until we run the container puppet process or paunch, we should pull the containers after we setup the container engine. This will allow us to fail early when containers aren't available and be able to troubleshoot connectivity/auth issues seperately from configuration problems. Closes-Bug: #1870557 Depends-On: https://review.opendev.org/#/c/717326/ Change-Id: I9cb011dd4bed35a55a586e97a4e7d653f8296595 (cherry picked from commit 24fb2e3f5ef4fcde11ff6e92d318729b326b5d2b) --- .../deprecated/docker/docker-baremetal-ansible.yaml | 11 +++++++++++ deployment/podman/podman-baremetal-ansible.yaml | 12 ++++++++++++ 2 files changed, 23 insertions(+) diff --git a/deployment/deprecated/docker/docker-baremetal-ansible.yaml b/deployment/deprecated/docker/docker-baremetal-ansible.yaml index 2d7e72f025..c62d8ca0a3 100644 --- a/deployment/deprecated/docker/docker-baremetal-ansible.yaml +++ b/deployment/deprecated/docker/docker-baremetal-ansible.yaml @@ -185,6 +185,17 @@ outputs: name: container-registry tasks_from: docker-login when: container_registry_login|bool + deploy_steps_tasks: + - when: + - (step|int) == 1 + block: + - name: Pre-fetch all the containers + become: true + docker_image: + name: "{{ container_image }}" + loop_control: + loop_var: container_image + loop: "{{ lookup('file', tripleo_role_name + '/docker_config.yaml', errors='ignore') | default('{}', True) | from_yaml | recursive_get_key_from_dict(key='image') | unique }}" service_config_settings: neutron_l3: docker_additional_sockets: {get_param: DockerAdditionalSockets} diff --git a/deployment/podman/podman-baremetal-ansible.yaml b/deployment/podman/podman-baremetal-ansible.yaml index 5de78d5bc7..245f961838 100644 --- a/deployment/podman/podman-baremetal-ansible.yaml +++ b/deployment/podman/podman-baremetal-ansible.yaml @@ -133,6 +133,18 @@ outputs: path: /etc/sysconfig/podman_drop_in state: absent + deploy_steps_tasks: + - when: + - (step|int) == 1 + block: + # TODO(mwhahaha): figure out the bug in podman_image + - name: Pre-fetch all the containers + become: true + shell: podman pull "{{ container_image }}" + loop_control: + loop_var: container_image + loop: "{{ lookup('file', tripleo_role_name + '/docker_config.yaml', errors='ignore') | default('{}', True) | from_yaml | recursive_get_key_from_dict(key='image') | unique }}" + service_config_settings: {} upgrade_tasks: