aboutsummaryrefslogtreecommitdiffstats
path: root/network/ports
diff options
context:
space:
mode:
authorSteven Hardy <shardy@redhat.com>2016-02-11 10:57:54 +0000
committerGiulio Fidente <gfidente@redhat.com>2016-03-04 14:26:55 +0100
commit07e99fef9ba96dd9a650ef43560e6a7794939a20 (patch)
treef670f5ce0290c7fc78b54a3d13d18d52741d8b8a /network/ports
parent6be32543479589dedcae7502e6fe2167efeda710 (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/ports')
-rw-r--r--network/ports/management.yaml6
-rw-r--r--network/ports/management_from_pool.yaml43
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]}