1ed5cca1bcd9a5a78c66a1f0bf376b8c2a2b56c9
[apex-tripleo-heat-templates.git] / network / ports / storage.yaml
1 heat_template_version: 2015-10-15
2
3 description: >
4   Creates a port on the storage network.
5
6 parameters:
7   StorageNetName:
8     description: Name of the storage neutron network
9     default: storage
10     type: string
11   PortName:
12     description: Name of the port
13     default: ''
14     type: string
15   ControlPlaneIP: # Here for compatibility with noop.yaml
16     description: IP address on the control plane
17     default: ''
18     type: string
19   FixedIPs:
20     description: >
21         Control the IP allocation for the VIP port. E.g.
22         [{'ip_address':'1.2.3.4'}]
23     default: []
24     type: json
25   IPPool: # Here for compatibility with from_pool.yaml
26     default: {}
27     type: json
28   NodeIndex: # Here for compatibility with from_pool.yaml
29     default: 0
30     type: number
31
32 resources:
33
34   StoragePort:
35     type: OS::Neutron::Port
36     properties:
37       network: {get_param: StorageNetName}
38       name: {get_param: PortName}
39       fixed_ips: {get_param: FixedIPs}
40       replacement_policy: AUTO
41
42 outputs:
43   ip_address:
44     description: storage network IP
45     value: {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
46   ip_address_uri:
47     description: storage network IP (for compatibility with storage_v6.yaml)
48     value: {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
49   ip_subnet:
50     description: IP/Subnet CIDR for the storage network IP
51     value:
52           list_join:
53             - ''
54             - - {get_attr: [StoragePort, fixed_ips, 0, ip_address]}
55               - '/'
56               - {str_split: ['/', {get_attr: [StoragePort, subnets, 0, cidr]}, 1]}