diff options
Diffstat (limited to 'network/ports/tenant_from_pool.yaml')
-rw-r--r-- | network/ports/tenant_from_pool.yaml | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/network/ports/tenant_from_pool.yaml b/network/ports/tenant_from_pool.yaml new file mode 100644 index 00000000..29303bb6 --- /dev/null +++ b/network/ports/tenant_from_pool.yaml @@ -0,0 +1,45 @@ +heat_template_version: 2015-04-30 + +description: > + Returns an IP from a network mapped list of IPs + +parameters: + TenantNetName: + description: Name of the tenant network + default: tenant + type: string + PortName: + description: Name of the port + default: '' + type: string + ControlPlaneIP: # Here for compatability 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 + TenantNetCidr: + default: '172.16.0.0/24' + description: Cidr for the tenant network. + type: string + +outputs: + ip_address: + description: tenant network IP + value: {get_param: [IPPool, {get_param: TenantNetName}, {get_param: NodeIndex}]} + ip_subnet: + # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) + description: IP/Subnet CIDR for the tenant network IP + value: + list_join: + - '' + - - {get_param: [IPPool, {get_param: TenantNetName}, {get_param: NodeIndex}]} + - '/' + - {get_param: [TenantNetCidr, -2]} + - {get_param: [TenantNetCidr, -1]} |