Change flat network name for nosdn fdio scenario
[apex-tripleo-heat-templates.git] / puppet / services / neutron-lbaas.yaml
1 heat_template_version: pike
2
3 description: >
4   Neutron LBaaS service configured with Puppet
5
6 parameters:
7   ServiceData:
8     default: {}
9     description: Dictionary packing service data
10     type: json
11   ServiceNetMap:
12     default: {}
13     description: Mapping of service_name -> network name. Typically set
14                  via parameter_defaults in the resource registry.  This
15                  mapping overrides those in ServiceNetMapDefaults.
16     type: json
17   DefaultPasswords:
18     default: {}
19     type: json
20   RoleName:
21     default: ''
22     description: Role name on which the service is applied
23     type: string
24   RoleParameters:
25     default: {}
26     description: Parameters specific to the role
27     type: json
28   EndpointMap:
29     default: {}
30     description: Mapping of service endpoint -> protocol. Typically set
31                  via parameter_defaults in the resource registry.
32     type: json
33   NeutronLbaasInterfaceDriver:
34     default: 'neutron.agent.linux.interface.OVSInterfaceDriver'
35     type: string
36   NeutronLbaasDeviceDriver:
37     default: 'neutron.services.loadbalancer.drivers.haproxy.namespace_driver.HaproxyNSDriver'
38     type: string
39   NeutronServiceProviders:
40     default: 'LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default'
41     description: Global list of service providers used by neutron. This
42                  list should be passed in to ensure all service
43                  providers desired by the user are included. The
44                  provided default value only set the provider for the LBaaSv2
45                  subsystem.This is currently incompatible with enabling
46                  octavia-api as one service or the other will break because the defaults are different.
47     type: comma_delimited_list
48
49 resources:
50
51   NeutronBase:
52     type: ./neutron-base.yaml
53     properties:
54       ServiceData: {get_param: ServiceData}
55       ServiceNetMap: {get_param: ServiceNetMap}
56       DefaultPasswords: {get_param: DefaultPasswords}
57       EndpointMap: {get_param: EndpointMap}
58       RoleName: {get_param: RoleName}
59       RoleParameters: {get_param: RoleParameters}
60
61 outputs:
62   role_data:
63     description: Role data for the Neutron LBaaS role.
64     value:
65       service_name: neutron_lbaas
66       config_settings:
67         map_merge:
68           - get_attr: [NeutronBase, role_data, config_settings]
69           - neutron::agents::lbaas::interface_driver: {get_param: NeutronLbaasInterfaceDriver}
70             neutron::agents::lbaas::device_driver: {get_param: NeutronLbaasDeviceDriver}
71       step_config: |
72         include ::tripleo::profile::base::neutron::lbaas
73       service_config_settings:
74         neutron_api:
75           neutron::server::service_providers: {get_param: NeutronServiceProviders}
76         horizon:
77           horizon::neutron_options:
78             enable_lb: True