- name: deploy podified Placement ansible.builtin.shell: | {{ shell_header }} {{ oc_header }} oc patch openstackcontrolplane openstack --type=merge --patch '{{ placement_patch }}' - name: wait for Placement to start up ansible.builtin.shell: | {{ shell_header }} {{ oc_header }} oc wait pod --for condition=Ready --selector=service=placement register: placement_running_result until: placement_running_result is success retries: 60 delay: "{{ placement_retry_delay }}" - name: check that Placement is reachable and its endpoints are defined # There is no placement CLI packaged in Fedora, we could do a CLI # check if we agree on installing it from RDO/OSP packages before # running the test suite. For now let's just curl the API. ansible.builtin.shell: | {{ shell_header }} {{ oc_header }} alias openstack="oc exec -t openstackclient -- openstack" ${BASH_ALIASES[openstack]} endpoint list | grep placement ${BASH_ALIASES[openstack]} endpoint list | grep placement | grep public PLACEMENT_PUBLIC_URL=$(${BASH_ALIASES[openstack]} endpoint list -c 'Service Name' -c 'Service Type' -c URL | grep placement | grep public | awk '{ print $6; }') oc exec -t openstackclient -- curl "$PLACEMENT_PUBLIC_URL" | grep '"versions"' register: placement_responding_result until: placement_responding_result is success retries: 15 delay: "{{ placement_retry_delay }}"