e760d29e3cbaedb8ec1336b710d0f18477dc617f
[apex-tripleo-heat-templates.git] / puppet / services / neutron-dhcp.yaml
1 heat_template_version: 2016-04-08
2
3 description: >
4   OpenStack Neutron DHCP agent configured with Puppet
5
6 parameters:
7   ServiceNetMap:
8     default: {}
9     description: Mapping of service_name -> network name. Typically set
10                  via parameter_defaults in the resource registry.  This
11                  mapping overrides those in ServiceNetMapDefaults.
12     type: json
13   EndpointMap:
14     default: {}
15     description: Mapping of service endpoint -> protocol. Typically set
16                  via parameter_defaults in the resource registry.
17     type: json
18   NeutronEnableIsolatedMetadata:
19     default: 'False'
20     description: If True, DHCP provide metadata route to VM.
21     type: string
22
23 resources:
24
25   NeutronBase:
26     type: ./neutron-base.yaml
27     properties:
28       ServiceNetMap: {get_param: ServiceNetMap}
29       EndpointMap: {get_param: EndpointMap}
30
31 outputs:
32   role_data:
33     description: Role data for the Neutron DHCP agent service.
34     value:
35       service_name: neutron_dhcp
36       config_settings:
37         map_merge:
38           - get_attr: [NeutronBase, role_data, config_settings]
39           - neutron::agents::dhcp::enable_isolated_metadata: {get_param: NeutronEnableIsolatedMetadata}
40             tripleo.neutron_dhcp.firewall_rules:
41               '115 neutron dhcp input':
42                 proto: 'udp'
43                 dport: 67
44               '116 neutron dhcp output':
45                 proto: 'udp'
46                 chain: 'OUTPUT'
47                 dport: 68
48       step_config: |
49         include tripleo::profile::base::neutron::dhcp