diff options
author | Steven Hardy <shardy@redhat.com> | 2016-02-11 10:57:54 +0000 |
---|---|---|
committer | Giulio Fidente <gfidente@redhat.com> | 2016-03-04 14:26:55 +0100 |
commit | 07e99fef9ba96dd9a650ef43560e6a7794939a20 (patch) | |
tree | f670f5ce0290c7fc78b54a3d13d18d52741d8b8a /network | |
parent | 6be32543479589dedcae7502e6fe2167efeda710 (diff) |
Allow for usage of pre-allocated IPs for the management network
Id3d4f12235501ae77200430a2dc022f378dce336 added support for pre-allocated
IPs on the other overlay networks, but because the patch adding the
managment network (I0813a13f60a4f797be04b34258a2cffa9ea7e84f) was
under review around the same time, we missed adding the from_pool
capability to the ManagementNetwork.
Change-Id: If99f37634d5da7e7fb7cfc31232e926bd5ff074a
Diffstat (limited to 'network')
-rw-r--r-- | network/ports/management.yaml | 6 | ||||
-rw-r--r-- | network/ports/management_from_pool.yaml | 43 |
2 files changed, 49 insertions, 0 deletions
diff --git a/network/ports/management.yaml b/network/ports/management.yaml index 20c1b853..8ad2eb47 100644 --- a/network/ports/management.yaml +++ b/network/ports/management.yaml @@ -16,6 +16,12 @@ parameters: ControlPlaneIP: # Here for compatibility with noop.yaml description: IP address on the control plane type: string + IPPool: # Here for compatibility with from_pool.yaml + default: {} + type: json + NodeIndex: # Here for compatibility with from_pool.yaml + default: 0 + type: number resources: diff --git a/network/ports/management_from_pool.yaml b/network/ports/management_from_pool.yaml new file mode 100644 index 00000000..bbd62f5b --- /dev/null +++ b/network/ports/management_from_pool.yaml @@ -0,0 +1,43 @@ +heat_template_version: 2015-04-30 + +description: > + Returns an IP from a network mapped list of IPs + +parameters: + ManagementNetName: + description: Name of the management network + default: management + 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 + ManagementNetCidr: + default: '172.16.4.0/24' + description: Cidr for the management network. + type: string + +outputs: + ip_address: + description: management network IP + value: {get_param: [IPPool, {get_param: ManagementNetName}, {get_param: NodeIndex}]} + ip_subnet: + description: IP/Subnet CIDR for the management network IP + value: + list_join: + - '' + - - {get_param: [IPPool, {get_param: ManagementNetName}, {get_param: NodeIndex}]} + - '/' + - {str_split: ['/', {get_param: ManagementNetCidr}, 1]} |