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