--- - name: Create a service endpoint for compute openstack.cloud.endpoint: cloud: "{{ cloud }}" service: nova endpoint_interface: internal url: http://controller:9292 region: RegionOne state: present register: endpoint_test - debug: var=endpoint_test - name: Assert return values of endpoint module assert: that: # allow new fields to be introduced but prevent fields from being removed - expected_fields|difference(endpoint_test.endpoint.keys())|length == 0 - name: Ensure service have the proper endpoint assert: that: - endpoint_test.endpoint.url == "http://controller:9292" - name: Create service endpoint for compute again openstack.cloud.endpoint: cloud: "{{ cloud }}" service: nova endpoint_interface: internal url: http://controller:9292 region: RegionOne state: present register: endpoint_again - name: Ensure changed is false assert: that: - not endpoint_again.changed - name: Update service endpoint url openstack.cloud.endpoint: cloud: "{{ cloud }}" service: nova endpoint_interface: internal url: http://controller:9393 region: RegionOne state: present register: endpoint_updated - name: Ensure service endpoint was updated assert: that: - endpoint_updated.endpoint.url == "http://controller:9393" - name: Delete service endpoint openstack.cloud.endpoint: cloud: "{{ cloud }}" service: nova endpoint_interface: internal url: http://controller:9393 region: RegionOne state: absent register: endpoint_deleted - name: Ensure service endpoint was deleted assert: that: - endpoint_deleted.changed