Adds network/cidr mapping into a new service property
[apex-tripleo-heat-templates.git] / network / internal_api_v6.yaml
1 heat_template_version: pike
2
3 description: >
4   Internal API network. Used for most APIs, Database, RPC.
5
6 parameters:
7   # the defaults here work for static IP assignment (IPAM) only
8   InternalApiNetCidr:
9     # OpenStack uses the EUI-64 address format, which requires a /64 prefix
10     default: 'fd00:fd00:fd00:2000::/64'
11     description: Cidr for the internal API network.
12     type: string
13   InternalApiNetValueSpecs:
14     default: {'provider:physical_network': 'internal_api', 'provider:network_type': 'flat'}
15     description: Value specs for the internal API network.
16     type: json
17   InternalApiNetAdminStateUp:
18     default: false
19     description: The admin state of the network.
20     type: boolean
21   InternalApiNetShared:
22     default: false
23     description: Whether this network is shared across all tenants.
24     type: boolean
25   InternalApiNetName:
26     default: internal_api
27     description: The name of the internal API network.
28     type: string
29   InternalApiSubnetName:
30     default: internal_api_subnet
31     description: The name of the internal API subnet in Neutron.
32     type: string
33   InternalApiAllocationPools:
34     default: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}]
35     description: Ip allocation pool range for the internal API network.
36     type: json
37   IPv6AddressMode:
38     default: dhcpv6-stateful
39     description: Neutron subnet IPv6 address mode
40     type: string
41   IPv6RAMode:
42     default: dhcpv6-stateful
43     description: Neutron subnet IPv6 router advertisement mode
44     type: string
45
46 resources:
47   InternalApiNetwork:
48     type: OS::Neutron::Net
49     properties:
50       admin_state_up: {get_param: InternalApiNetAdminStateUp}
51       name: {get_param: InternalApiNetName}
52       shared: {get_param: InternalApiNetShared}
53       value_specs: {get_param: InternalApiNetValueSpecs}
54
55   InternalApiSubnet:
56     type: OS::Neutron::Subnet
57     properties:
58       ip_version: 6
59       ipv6_address_mode: {get_param: IPv6AddressMode}
60       ipv6_ra_mode: {get_param: IPv6RAMode}
61       cidr: {get_param: InternalApiNetCidr}
62       name: {get_param: InternalApiSubnetName}
63       network: {get_resource: InternalApiNetwork}
64       allocation_pools: {get_param: InternalApiAllocationPools}
65       gateway_ip: null
66
67 outputs:
68   OS::stack_id:
69     description: Neutron internal network
70     value: {get_resource: InternalApiNetwork}
71   subnet_cidr:
72     value: {get_attr: InternalApiSubnet, cidr}