heat_template_version: 2015-04-30 description: > OpenStack Endpoint parameters: EndpointName: type: string description: The name of the Endpoint being evaluated EndpointMap: type: json default: {} description: Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. IP: type: string description: The IP address of the Neutron Port that the endpoint is attached to UriSuffix: type: string default: '' description: A suffix attached to the URL CloudName: type: string default: '' description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org outputs: endpoint: description: > A Hash containing a mapping of service endpoints to ports, protocols, uris assigned IPs, and hostnames for a specific endpoint value: port: {get_param: [EndpointMap, {get_param: EndpointName }, port] } protocol: {get_param: [EndpointMap, {get_param: EndpointName }, protocol] } ip: {get_param: IP} host: str_replace: template: {get_param: [EndpointMap, {get_param: EndpointName }, host]} params: {IP_ADDRESS: {get_param: IP}, CLOUDNAME: {get_param: CloudName}} uri: list_join: - '' - - {get_param: [EndpointMap, {get_param: EndpointName }, protocol] } - '://' - str_replace: template: {get_param: [EndpointMap, {get_param: EndpointName }, host]} params: {IP_ADDRESS: {get_param: IP}, CLOUDNAME: {get_param: CloudName }} - ':' - {get_param: [EndpointMap, {get_param: EndpointName }, port] } - {get_param: UriSuffix } uri_no_suffix: list_join: - '' - - {get_param: [EndpointMap, {get_param: EndpointName }, protocol] } - '://' - str_replace: template: {get_param: [EndpointMap, {get_param: EndpointName }, host]} params: {IP_ADDRESS: {get_param: IP}, CLOUDNAME: {get_param: CloudName} } - ':' - {get_param: [EndpointMap, {get_param: EndpointName }, port] }