aboutsummaryrefslogtreecommitdiffstats
path: root/network/ports/external_v6.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'network/ports/external_v6.yaml')
-rw-r--r--network/ports/external_v6.yaml68
1 files changed, 68 insertions, 0 deletions
diff --git a/network/ports/external_v6.yaml b/network/ports/external_v6.yaml
new file mode 100644
index 00000000..522caaa0
--- /dev/null
+++ b/network/ports/external_v6.yaml
@@ -0,0 +1,68 @@
+heat_template_version: 2015-04-30
+
+description: >
+ Creates a port on the external network. The IP address will be chosen
+ automatically if FixedIPs is empty.
+
+parameters:
+ ExternalNetName:
+ description: Name of the external neutron network
+ default: external
+ 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
+ ControlPlaneNetwork: # Here for compatibility with ctlplane_vip.yaml
+ description: The name of the undercloud Neutron control plane
+ default: ctlplane
+ type: string
+ FixedIPs:
+ description: >
+ Control the IP allocation for the VIP port. E.g.
+ [{'ip_address':'1.2.3.4'}]
+ default: []
+ type: json
+ IPPool: # Here for compatibility with from_pool.yaml
+ default: {}
+ type: json
+ NodeIndex: # Here for compatibility with from_pool.yaml
+ default: 0
+ type: number
+
+resources:
+
+ ExternalPort:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ExternalNetName}
+ name: {get_param: PortName}
+ fixed_ips: {get_param: FixedIPs}
+ replacement_policy: AUTO
+
+outputs:
+ ip_address:
+ description: external network IP
+ value: {get_attr: [ExternalPort, fixed_ips, 0, ip_address]}
+ ip_address_uri:
+ description: external network IP with brackets suitable for a URL
+ value:
+ list_join:
+ - ''
+ - - '['
+ - {get_attr: [ExternalPort, fixed_ips, 0, ip_address]}
+ - ']'
+ ip_subnet:
+ # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?)
+ description: IP/Subnet CIDR for the external network IP
+ value:
+ list_join:
+ - ''
+ - - {get_attr: [ExternalPort, fixed_ips, 0, ip_address]}
+ - '/'
+ - {get_attr: [ExternalPort, subnets, 0, cidr, -2]}
+ - {get_attr: [ExternalPort, subnets, 0, cidr, -1]}