bc8dd8d148ed656b10127fc40137a5982bdb60d3
[apex-tripleo-heat-templates.git] / puppet / services / neutron-base.yaml
1 heat_template_version: 2016-04-08
2
3 description: >
4   OpenStack Neutron base service. Shared for all Neutron agents.
5
6 parameters:
7   RabbitPassword:
8     description: The password for RabbitMQ
9     type: string
10     hidden: true
11   RabbitUserName:
12     default: guest
13     description: The username for RabbitMQ
14     type: string
15   RabbitClientUseSSL:
16     default: false
17     description: >
18         Rabbit client subscriber parameter to specify
19         an SSL connection to the RabbitMQ host.
20     type: string
21   RabbitClientPort:
22     default: 5672
23     description: Set rabbit subscriber port, change this if using SSL
24     type: number
25   NeutronDhcpAgentsPerNetwork:
26     type: number
27     default: 3
28     description: The number of neutron dhcp agents to schedule per network
29   NeutronCorePlugin:
30     default: 'ml2'
31     description: |
32         The core plugin for Neutron. The value should be the entrypoint to be loaded
33         from neutron.core_plugins namespace.
34     type: string
35   NeutronServicePlugins:
36     default: "router,qos"
37     description: |
38         Comma-separated list of service plugin entrypoints to be loaded from the
39         neutron.service_plugins namespace.
40     type: comma_delimited_list
41   Debug:
42     type: string
43     default: ''
44     description: Set to True to enable debugging on all services.
45   EnableConfigPurge:
46     type: boolean
47     default: true
48     description: >
49         Remove configuration that is not generated by TripleO. Setting
50         to false may result in configuration remnants after updates/upgrades.
51
52 outputs:
53   role_data:
54     description: Role data for the Neutron base service.
55     value:
56       service_name: neutron_base
57       config_settings:
58         neutron::rabbit_password: {get_param: RabbitPassword}
59         neutron::rabbit_user: {get_param: RabbitUserName}
60         neutron::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
61         neutron::rabbit_port: {get_param: RabbitClientPort}
62         neutron::dhcp_agents_per_network: {get_param: NeutronDhcpAgentsPerNetwork}
63         neutron::core_plugin: {get_param: NeutronCorePlugin}
64         neutron::service_plugins:
65           str_replace:
66             template: PLUGINS
67             params:
68               PLUGINS: {get_param: NeutronServicePlugins}
69         neutron::debug: {get_param: Debug}
70         neutron::purge_config: {get_param: EnableConfigPurge}
71         neutron::allow_overlapping_ips: true
72         neutron::rabbit_heartbeat_timeout_threshold: 60
73         neutron::host: '"%{::fqdn}"'    #NOTE: extra quoting is needed
74         neutron::db::database_db_max_retries: -1
75         neutron::db::database_max_retries: -1