heat_template_version: 2015-04-30
description: >
External network. Public traffic, Neutron l3router for floating IPs/SNAT, etc.
parameters:
# the defaults here work for static IP assignment (IPAM) only
ExternalNetCidr:
default: '10.0.0.0/24'
description: Cidr for the external network.
type: string
ExternalNetValueSpecs:
default: {'provider:physical_network': 'external', 'provider:network_type': 'flat'}
description: Value specs for the external network.
type: json
ExternalNetAdminStateUp:
default: false
description: This admin state of the network.
type: boolean
ExternalNetEnableDHCP:
default: false
description: Whether to enable DHCP on the associated subnet.
type: boolean
ExternalNetShared:
default: false
description: Whether this network is shared across all tenants.
type: boolean
ExternalNetName:
default: external
description: The name of the external network.
type: string
ExternalSubnetName:
default: external_subnet
description: The name of the external subnet in Neutron.
type: string
ExternalAllocationPools:
default: [{'start': '10.0.0.4', 'end': '10.0.0.250'}]
description: Ip allocation pool range for the external network.
type: json
resources:
ExternalNetwork:
type: OS::Neutron::Net
properties:
admin_state_up: {get_param: ExternalNetAdminStateUp}
name: {get_param: ExternalNetName}
shared: {get_param: ExternalNetShared}
value_specs: {get_param: ExternalNetValueSpecs}
ExternalSubnet:
type: OS::Neutron::Subnet
properties:
cidr: {get_param: ExternalNetCidr}
enable_dhcp: {get_param: ExternalNetEnableDHCP}
name: {get_param: ExternalSubnetName}
network: {get_resource: ExternalNetwork}
allocation_pools: {get_param: ExternalAllocationPools}
outputs:
OS::stack_id:
description: Neutron external network
value: {get_resource: ExternalNetwork}