Render port templates via j2
Remove these from the j2 excludes and instead render all the networks to avoid duplication. Change-Id: Id8e14e06ffe959c50456b4c88fef306046a8b478 Partially-Implements: blueprint composable-networks
This commit is contained in:
parent
c87a0d0083
commit
700b82bf20
@ -11,27 +11,3 @@ name:
|
||||
- network/storage_mgmt_v6.yaml
|
||||
- network/tenant_v6.yaml
|
||||
- network/management_v6.yaml
|
||||
- network/ports/internal_api.yaml
|
||||
- network/ports/external.yaml
|
||||
- network/ports/storage.yaml
|
||||
- network/ports/storage_mgmt.yaml
|
||||
- network/ports/tenant.yaml
|
||||
- network/ports/management.yaml
|
||||
- network/ports/internal_api_v6.yaml
|
||||
- network/ports/external_v6.yaml
|
||||
- network/ports/storage_v6.yaml
|
||||
- network/ports/storage_mgmt_v6.yaml
|
||||
- network/ports/tenant_v6.yaml
|
||||
- network/ports/management_v6.yaml
|
||||
- network/ports/internal_api_from_pool.yaml
|
||||
- network/ports/external_from_pool.yaml
|
||||
- network/ports/storage_from_pool.yaml
|
||||
- network/ports/storage_mgmt_from_pool.yaml
|
||||
- network/ports/tenant_from_pool.yaml
|
||||
- network/ports/management_from_pool.yaml
|
||||
- network/ports/internal_api_from_pool_v6.yaml
|
||||
- network/ports/external_from_pool_v6.yaml
|
||||
- network/ports/storage_from_pool_v6.yaml
|
||||
- network/ports/storage_mgmt_from_pool_v6.yaml
|
||||
- network/ports/tenant_from_pool_v6.yaml
|
||||
- network/ports/management_from_pool_v6.yaml
|
||||
|
@ -1,61 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the external network. The IP address will be chosen
|
||||
automatically if FixedIPs is empty.
|
||||
|
||||
parameters:
|
||||
ExternalNetName:
|
||||
description: The 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
|
||||
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 (for compatibility with external_v6.yaml)
|
||||
value: {get_attr: [ExternalPort, fixed_ips, 0, ip_address]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the external network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [ExternalPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [ExternalPort, subnets, 0, cidr]}, 1]}
|
@ -1,46 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs
|
||||
|
||||
parameters:
|
||||
ExternalNetName:
|
||||
description: The 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]}
|
@ -1,52 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs. This version is for IPv6
|
||||
addresses. The ip_address_uri output will have brackets for use in URLs.
|
||||
|
||||
parameters:
|
||||
ExternalNetName:
|
||||
description: The name of the external 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
|
||||
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: '2001:db8:fd00:1000::/64'
|
||||
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:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {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]}
|
@ -1,57 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the internal_api network.
|
||||
|
||||
parameters:
|
||||
InternalApiNetName:
|
||||
description: The name of the internal_api network.
|
||||
default: internal_api
|
||||
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
|
||||
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:
|
||||
|
||||
InternalApiPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: InternalApiNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: internal API network IP
|
||||
value: {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: |
|
||||
internal API network IP (for compatibility with internal_api_v6.yaml)
|
||||
value: {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the internal API network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [InternalApiPort, subnets, 0, cidr]}, 1]}
|
@ -1,46 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs
|
||||
|
||||
parameters:
|
||||
InternalApiNetName:
|
||||
description: The name of the internal_api network.
|
||||
default: internal_api
|
||||
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
|
||||
InternalApiNetCidr:
|
||||
default: '172.16.2.0/24'
|
||||
description: Cidr for the internal_api network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: internal API network IP
|
||||
value: {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
description: internal API network IP (for compatibility with internal_api_v6.yaml)
|
||||
value: {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the internal API network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: InternalApiNetCidr}, 1]}
|
@ -1,52 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs. This version is for IPv6
|
||||
addresses. The ip_address_uri output will have brackets for use in URLs.
|
||||
|
||||
parameters:
|
||||
InternalApiNetName:
|
||||
description: The name of the internal_api network.
|
||||
default: internal_api
|
||||
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
|
||||
InternalApiNetCidr:
|
||||
default: 'fd00:fd00:fd00:2000::/64'
|
||||
description: Cidr for the internal_api network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: internal API network IP
|
||||
value: {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
description: internal API network IP (for compatibility with internal_api_v6.yaml)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the internal API network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: InternalApiNetCidr}, 1]}
|
@ -1,61 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the internal_api network.
|
||||
|
||||
parameters:
|
||||
InternalApiNetName:
|
||||
description: The name of the internal_api network.
|
||||
default: internal_api
|
||||
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
|
||||
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:
|
||||
|
||||
InternalApiPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: InternalApiNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: internal API network IP
|
||||
value: {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: internal api network IP with brackets suitable for a URL
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the internal API network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [InternalApiPort, subnets, 0, cidr]}, 1]}
|
@ -1,49 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the management network. The IP address will be chosen
|
||||
automatically if FixedIPs is empty.
|
||||
|
||||
parameters:
|
||||
ManagementNetName:
|
||||
description: The name of the management network.
|
||||
default: management
|
||||
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
|
||||
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:
|
||||
|
||||
ManagementPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: ManagementNetName}
|
||||
name: {get_param: PortName}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: management network IP
|
||||
value: {get_attr: [ManagementPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: management network IP (for compatibility with management_v6.yaml)
|
||||
value: {get_attr: [ManagementPort, fixed_ips, 0, ip_address]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the management network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [ManagementPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [ManagementPort, subnets, 0, cidr]}, 1]}
|
@ -1,46 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs
|
||||
|
||||
parameters:
|
||||
ManagementNetName:
|
||||
description: The 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_address_uri:
|
||||
description: management network IP (for compatibility with management_v6.yaml)
|
||||
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]}
|
@ -1,52 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs. This version is for IPv6
|
||||
addresses. The ip_address_uri output will have brackets for use in URLs.
|
||||
|
||||
parameters:
|
||||
ManagementNetName:
|
||||
description: The 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: 'fd00:fd00:fd00:6000::/64'
|
||||
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_address_uri:
|
||||
description: management network IP (for compatibility with management_v6.yaml)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {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]}
|
@ -1,54 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the management network. The IP address will be chosen
|
||||
automatically if FixedIPs is empty.
|
||||
|
||||
parameters:
|
||||
ManagementNetName:
|
||||
description: The name of the management network.
|
||||
default: management
|
||||
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
|
||||
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:
|
||||
|
||||
ManagementPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: ManagementNetName}
|
||||
name: {get_param: PortName}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: management network IP
|
||||
value: {get_attr: [ManagementPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: management network IP with brackets suitable for a URL
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_attr: [ManagementPort, fixed_ips, 0, ip_address]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the management network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [ManagementPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [ManagementPort, subnets, 0, cidr]}, 1]}
|
@ -1,19 +1,19 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the external network. The IP address will be chosen
|
||||
Creates a port on the {{network.name}} network. The IP address will be chosen
|
||||
automatically if FixedIPs is empty.
|
||||
|
||||
parameters:
|
||||
ExternalNetName:
|
||||
description: The name of the external network.
|
||||
default: external
|
||||
{{network.name}}NetName:
|
||||
description: The name of the {{network.name_lower}} network.
|
||||
default: {{network.name_lower|default(network.name|lower)}}
|
||||
type: string
|
||||
PortName:
|
||||
description: Name of the port
|
||||
default: ''
|
||||
type: string
|
||||
ControlPlaneIP: # Here for compatability with noop.yaml
|
||||
ControlPlaneIP: # Here for compatibility with noop.yaml
|
||||
description: IP address on the control plane
|
||||
default: ''
|
||||
type: string
|
||||
@ -36,31 +36,37 @@ parameters:
|
||||
|
||||
resources:
|
||||
|
||||
ExternalPort:
|
||||
{{network.name}}Port:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: ExternalNetName}
|
||||
network: {get_param: {{network.name}}NetName}
|
||||
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]}
|
||||
description: {{network.name}} network IP
|
||||
value: {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: external network IP with brackets suitable for a URL
|
||||
{%- if network.ipv6 or ipv6_override|default(false) %}
|
||||
description: {{network.name}} network IP (with brackets for IPv6 URLs)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_attr: [ExternalPort, fixed_ips, 0, ip_address]}
|
||||
- {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
- ']'
|
||||
{%- else %}
|
||||
description: {{network.name}} network IP (for compatibility with IPv6 URLs)
|
||||
value: {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
{%- endif %}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the external network IP
|
||||
description: IP/Subnet CIDR for the {{network.name}} network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [ExternalPort, fixed_ips, 0, ip_address]}
|
||||
- - {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [ExternalPort, subnets, 0, cidr]}, 1]}
|
||||
- {str_split: ['/', {get_attr: [{{network.name}}Port, subnets, 0, cidr]}, 1]}
|
||||
|
@ -1,72 +1 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the {{network.name}} network. The IP address will be chosen
|
||||
automatically if FixedIPs is empty.
|
||||
|
||||
parameters:
|
||||
{{network.name}}NetName:
|
||||
description: Name of the {{network.name_lower}} neutron network
|
||||
default: {{network.name_lower|default(network.name|lower)}}
|
||||
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
|
||||
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:
|
||||
|
||||
{{network.name}}Port:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: {{network.name}}NetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: {{network.name}} network IP
|
||||
value: {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
{%- if network.ipv6 %}
|
||||
description: {{network.name}} network IP (with brackets for IPv6 URLs)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
- ']'
|
||||
{%- else %}
|
||||
description: {{network.name}} network IP (for compatibility with IPv6 URLs)
|
||||
value: {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
{%- endif %}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the {{network.name}} network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [{{network.name}}Port, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [{{network.name}}Port, subnets, 0, cidr]}, 1]}
|
||||
|
||||
{% include 'port.j2' %}
|
||||
|
65
network/ports/port_from_pool.j2
Normal file
65
network/ports/port_from_pool.j2
Normal file
@ -0,0 +1,65 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the {{network.name}} network, using a map of IPs per role.
|
||||
Each role has a map of IPs in <Role>IPs parameters, with a list of IPs by
|
||||
network (lower_name or lower case). For example:
|
||||
ControllerIPs:
|
||||
external:
|
||||
- 1.2.3.4 # First controller
|
||||
- 1.2.3.5 # Second controller
|
||||
|
||||
parameters:
|
||||
{{network.name}}NetName:
|
||||
description: The name of the {{network.name_lower}} network.
|
||||
default: {{network.name_lower}}
|
||||
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
|
||||
ControlPlaneNetwork: # Here for compatibility with ctlplane_vip.yaml
|
||||
description: The name of the undercloud Neutron control plane
|
||||
default: ctlplane
|
||||
type: string
|
||||
IPPool: # Set in <Role>IPs map, see environments/ips-from-pool-all.yaml
|
||||
default: {}
|
||||
type: json
|
||||
NodeIndex: # First node in the role will get first IP, and so on...
|
||||
default: 0
|
||||
type: number
|
||||
{{network.name}}NetCidr:
|
||||
default: {{network.ip_subnet}}
|
||||
description: Cidr for the {{network.name_lower}} network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: {{network.name}} network IP
|
||||
value: {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
{%- if network.ipv6 or ipv6_override|default(false) %}
|
||||
description: {{network.name}} network IP (with brackets for IPv6 URLs)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
- ']'
|
||||
{%- else %}
|
||||
description: {{network.name}} network IP (for compatibility with {{network.name_lower}}_v6.yaml)
|
||||
value: {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
{%- endif %}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the {{network.name}} network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: {{network.name}}NetCidr}, 1]}
|
||||
|
@ -1,65 +1 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the {{network.name}} network, using a map of IPs per role.
|
||||
Each role has a map of IPs in <Role>IPs parameters, with a list of IPs by
|
||||
network (lower_name or lower case). For example:
|
||||
ControllerIPs:
|
||||
external:
|
||||
- 1.2.3.4 # First controller
|
||||
- 1.2.3.5 # Second controller
|
||||
|
||||
parameters:
|
||||
{{network.name}}NetName:
|
||||
description: Name of the {{network.name}} neutron network
|
||||
default: {{network.name_lower}}
|
||||
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
|
||||
ControlPlaneNetwork: # Here for compatibility with ctlplane_vip.yaml
|
||||
description: The name of the undercloud Neutron control plane
|
||||
default: ctlplane
|
||||
type: string
|
||||
IPPool: # Set in <Role>IPs map, see environments/ips-from-pool-all.yaml
|
||||
default: {}
|
||||
type: json
|
||||
NodeIndex: # First node in the role will get first IP, and so on...
|
||||
default: 0
|
||||
type: number
|
||||
{{network.name}}NetCidr:
|
||||
default: {{network.ip_subnet}}
|
||||
description: Cidr for the {{network.name_lower}} network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: {{network.name}} network IP
|
||||
value: {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
{%- if network.ipv6 %}
|
||||
description: {{network.name}} network IP (with brackets for IPv6 URLs)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
- ']'
|
||||
{%- else %}
|
||||
description: {{network.name}} network IP (for compatibility with {{network.name_lower}}_v6.yaml)
|
||||
value: {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
{%- endif %}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the {{network.name}} network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: {{network.name}}NetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: {{network.name}}NetCidr}, 1]}
|
||||
|
||||
{% include 'port_from_pool.j2' %}
|
||||
|
2
network/ports/port_from_pool_v6.network.j2.yaml
Normal file
2
network/ports/port_from_pool_v6.network.j2.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
{% set ipv6_override = true -%}
|
||||
{% include 'port_from_pool.j2' %}
|
2
network/ports/port_v6.network.j2.yaml
Normal file
2
network/ports/port_v6.network.j2.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
{% set ipv6_override = true -%}
|
||||
{% include 'port.j2' %}
|
@ -1,56 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the storage network.
|
||||
|
||||
parameters:
|
||||
StorageNetName:
|
||||
description: The name of the storage network.
|
||||
default: storage
|
||||
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
|
||||
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:
|
||||
|
||||
StoragePort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: StorageNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage network IP
|
||||
value: {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: storage network IP (for compatibility with storage_v6.yaml)
|
||||
value: {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [StoragePort, subnets, 0, cidr]}, 1]}
|
@ -1,46 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs
|
||||
|
||||
parameters:
|
||||
StorageNetName:
|
||||
description: The name of the storage network.
|
||||
default: storage
|
||||
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
|
||||
StorageNetCidr:
|
||||
default: '172.16.1.0/24'
|
||||
description: Cidr for the storage network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage network IP
|
||||
value: {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
description: storage network IP (for compatibility with storage_v6.yaml)
|
||||
value: {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: StorageNetCidr}, 1]}
|
@ -1,52 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs. This version is for IPv6
|
||||
addresses. The ip_address_uri output will have brackets for use in URLs.
|
||||
|
||||
parameters:
|
||||
StorageNetName:
|
||||
description: The name of the storage network.
|
||||
default: storage
|
||||
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
|
||||
StorageNetCidr:
|
||||
default: 'fd00:fd00:fd00:3000::/64'
|
||||
description: Cidr for the storage network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage network IP
|
||||
value: {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
description: storage network IP (for compatibility with storage_v6.yaml)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: StorageNetCidr}, 1]}
|
@ -1,57 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the storage_mgmt API network.
|
||||
|
||||
parameters:
|
||||
StorageMgmtNetName:
|
||||
description: The name of the storage_mgmt network.
|
||||
default: storage_mgmt
|
||||
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
|
||||
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:
|
||||
|
||||
StorageMgmtPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: StorageMgmtNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage_mgmt network IP
|
||||
value: {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: |
|
||||
storage_mgmt network IP (for compatibility with storage_mgmt_v6.yaml)
|
||||
value: {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage_mgmt network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [StorageMgmtPort, subnets, 0, cidr]}, 1]}
|
@ -1,46 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs
|
||||
|
||||
parameters:
|
||||
StorageMgmtNetName:
|
||||
description: The name of the storage_mgmt network.
|
||||
default: storage_mgmt
|
||||
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
|
||||
StorageMgmtNetCidr:
|
||||
default: '172.16.3.0/24'
|
||||
description: Cidr for the storage_mgmt network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage MGMT network IP
|
||||
value: {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
description: storage MGMT network IP (for compatibility with storage_mgmt_v6.yaml)
|
||||
value: {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage MGMT network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: StorageMgmtNetCidr}, 1]}
|
@ -1,52 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs This version is for IPv6
|
||||
addresses. The ip_address_uri output will have brackets for use in URLs.
|
||||
|
||||
parameters:
|
||||
StorageMgmtNetName:
|
||||
description: The name of the storage_mgmt network.
|
||||
default: storage_mgmt
|
||||
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
|
||||
StorageMgmtNetCidr:
|
||||
default: 'fd00:fd00:fd00:4000::/64'
|
||||
description: Cidr for the storage_mgmt network.
|
||||
type: string
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage MGMT network IP
|
||||
value: {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]}
|
||||
ip_address_uri:
|
||||
description: storage MGMT network IP (for compatibility with storage_mgmt_v6.yaml)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage MGMT network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: StorageMgmtNetCidr}, 1]}
|
@ -1,61 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the storage_mgmt API network.
|
||||
|
||||
parameters:
|
||||
StorageMgmtNetName:
|
||||
description: The name of the storage_mgmt network.
|
||||
default: storage_mgmt
|
||||
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
|
||||
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:
|
||||
|
||||
StorageMgmtPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: StorageMgmtNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage_mgmt network IP
|
||||
value: {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: storage_mgmt network IP with brackets suitable for a URI
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage_mgmt network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [StorageMgmtPort, subnets, 0, cidr]}, 1]}
|
@ -1,61 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the storage network.
|
||||
|
||||
parameters:
|
||||
StorageNetName:
|
||||
description: The name of the storage network.
|
||||
default: storage
|
||||
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
|
||||
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:
|
||||
|
||||
StoragePort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: StorageNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: storage network IP
|
||||
value: {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: storage network IP with brackets suitable for a URL
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the storage network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [StoragePort, subnets, 0, cidr]}, 1]}
|
@ -1,56 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the tenant network.
|
||||
|
||||
parameters:
|
||||
TenantNetName:
|
||||
description: The name of the tenant network.
|
||||
default: tenant
|
||||
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
|
||||
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:
|
||||
|
||||
TenantPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: TenantNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: tenant network IP
|
||||
value: {get_attr: [TenantPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: tenant network IP (for compatibility with tenant_v6.yaml)
|
||||
value: {get_attr: [TenantPort, fixed_ips, 0, ip_address]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the tenant network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [TenantPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [TenantPort, subnets, 0, cidr]}, 1]}
|
@ -1,46 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs
|
||||
|
||||
parameters:
|
||||
TenantNetName:
|
||||
description: The name of the tenant network.
|
||||
default: tenant
|
||||
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
|
||||
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_address_uri:
|
||||
description: tenant network IP (for compatibility with tenant_v6.yaml)
|
||||
value: {get_param: [IPPool, {get_param: TenantNetName}, {get_param: NodeIndex}]}
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the tenant network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: TenantNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: TenantNetCidr}, 1]}
|
@ -1,51 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Returns an IP from a network mapped list of IPs
|
||||
|
||||
parameters:
|
||||
TenantNetName:
|
||||
description: The 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: 'fd00:fd00:fd00:5000::/64'
|
||||
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_address_uri:
|
||||
description: tenant network IP (for compatibility with tenant_v6.yaml)
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_param: [IPPool, {get_param: ExternalNetName}, {get_param: NodeIndex}]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the tenant network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_param: [IPPool, {get_param: TenantNetName}, {get_param: NodeIndex}]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_param: TenantNetCidr}, 1]}
|
@ -1,61 +0,0 @@
|
||||
heat_template_version: pike
|
||||
|
||||
description: >
|
||||
Creates a port on the tenant network.
|
||||
|
||||
parameters:
|
||||
TenantNetName:
|
||||
description: The 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
|
||||
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:
|
||||
|
||||
TenantPort:
|
||||
type: OS::Neutron::Port
|
||||
properties:
|
||||
network: {get_param: TenantNetName}
|
||||
name: {get_param: PortName}
|
||||
fixed_ips: {get_param: FixedIPs}
|
||||
replacement_policy: AUTO
|
||||
|
||||
outputs:
|
||||
ip_address:
|
||||
description: tenant network IP
|
||||
value: {get_attr: [TenantPort, fixed_ips, 0, ip_address]}
|
||||
ip_address_uri:
|
||||
description: tenant network IP with brackets suitable for a URL
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - '['
|
||||
- {get_attr: [TenantPort, fixed_ips, 0, ip_address]}
|
||||
- ']'
|
||||
ip_subnet:
|
||||
description: IP/Subnet CIDR for the tenant network IP
|
||||
value:
|
||||
list_join:
|
||||
- ''
|
||||
- - {get_attr: [TenantPort, fixed_ips, 0, ip_address]}
|
||||
- '/'
|
||||
- {str_split: ['/', {get_attr: [TenantPort, subnets, 0, cidr]}, 1]}
|
Loading…
Reference in New Issue
Block a user