heat_template_version: pike description: > Returns an IP from a network mapped list of IPs parameters: ExternalNetName: description: Name of the external network default: external type: string PortName: description: Name of the port default: '' type: string ControlPlaneIP: # Here for compatibility with noop.yaml description: IP address on the control plane default: '' type: string IPPool: default: {} description: A network mapped list of IPs type: json NodeIndex: default: 0 description: Index of the IP to get from Pool type: number ExternalNetCidr: default: '10.0.0.0/24' description: Cidr for the external network. type: string outputs: ip_address: description: external network IP value: {get_param: [IPPool, {get_param: ExternalNetName}, {get_param: NodeIndex}]} ip_address_uri: description: external network IP (for compatibility with IPv6) value: {get_param: [IPPool, {get_param: ExternalNetName}, {get_param: NodeIndex}]} ip_subnet: description: IP/Subnet CIDR for the external network IP value: list_join: - '' - - {get_param: [IPPool, {get_param: ExternalNetName}, {get_param: NodeIndex}]} - '/' - {str_split: ['/', {get_param: ExternalNetCidr}, 1]}