Merge "Comment parameters for registry in docker.yaml"
[apex-tripleo-heat-templates.git] / puppet / services / neutron-l3-compute-dvr.yaml
1 heat_template_version: pike
2
3 description: >
4   OpenStack Neutron L3 agent for DVR enabled compute nodes
5   configured with Puppet
6
7 parameters:
8   ServiceNetMap:
9     default: {}
10     description: Mapping of service_name -> network name. Typically set
11                  via parameter_defaults in the resource registry.  This
12                  mapping overrides those in ServiceNetMapDefaults.
13     type: json
14   DefaultPasswords:
15     default: {}
16     type: json
17   RoleName:
18     default: ''
19     description: Role name on which the service is applied
20     type: string
21   RoleParameters:
22     default: {}
23     description: Parameters specific to the role
24     type: json
25   EndpointMap:
26     default: {}
27     description: Mapping of service endpoint -> protocol. Typically set
28                  via parameter_defaults in the resource registry.
29     type: json
30   Debug:
31     type: string
32     default: ''
33   MonitoringSubscriptionNeutronL3Dvr:
34     default: 'overcloud-neutron-l3-dvr'
35     type: string
36   NeutronL3ComputeAgentLoggingSource:
37     type: json
38     default:
39       tag: openstack.neutron.agent.l3-compute
40       path: /var/log/neutron/l3-agent.log
41
42   # DEPRECATED: the following options are deprecated and are currently maintained
43   # for backwards compatibility. They will be removed in the Pike cycle.
44   NeutronExternalNetworkBridge:
45     description: Name of bridge used for external network traffic. Usually L2
46                  agent handles port wiring into external bridge, and hence the
47                  parameter should be unset.
48     type: string
49     default: ''
50
51 conditions:
52
53   external_network_bridge_empty: {equals : [{get_param: NeutronExternalNetworkBridge}, "''"]}
54
55 resources:
56
57   NeutronBase:
58     type: ./neutron-base.yaml
59     properties:
60       ServiceNetMap: {get_param: ServiceNetMap}
61       DefaultPasswords: {get_param: DefaultPasswords}
62       EndpointMap: {get_param: EndpointMap}
63       RoleName: {get_param: RoleName}
64       RoleParameters: {get_param: RoleParameters}
65
66 outputs:
67   role_data:
68     description: Role data for DVR L3 Agent on Compute Nodes
69     value:
70       service_name: neutron_l3_compute_dvr
71       monitoring_subscription: {get_param: MonitoringSubscriptionNeutronL3Dvr}
72       logging_source: {get_param: NeutronL3ComputeAgentLoggingSource}
73       logging_groups:
74         - neutron
75       config_settings:
76         map_merge:
77           - get_attr: [NeutronBase, role_data, config_settings]
78           - neutron::agents::l3::agent_mode : 'dvr'
79           -
80             if:
81             - external_network_bridge_empty
82             - {}
83             - neutron::agents::l3::external_network_bridge: {get_param: NeutronExternalNetworkBridge}
84       step_config: |
85         include tripleo::profile::base::neutron::l3