Merge "Make Rabbit parameters consistent"
[apex-tripleo-heat-templates.git] / puppet / services / sahara-base.yaml
1 heat_template_version: pike
2
3 description: >
4   OpenStack Sahara base service. Shared for all Sahara services.
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   DefaultPasswords:
14     default: {}
15     type: json
16   RoleName:
17     default: ''
18     description: Role name on which the service is applied
19     type: string
20   RoleParameters:
21     default: {}
22     description: Parameters specific to the role
23     type: json
24   EndpointMap:
25     default: {}
26     description: Mapping of service endpoint -> protocol. Typically set
27                  via parameter_defaults in the resource registry.
28     type: json
29   RabbitPassword:
30     description: The password for RabbitMQ
31     type: string
32     hidden: true
33   RabbitUserName:
34     default: guest
35     description: The username for RabbitMQ
36     type: string
37   RabbitClientUseSSL:
38     default: false
39     description: >
40         Rabbit client subscriber parameter to specify
41         an SSL connection to the RabbitMQ host.
42     type: string
43   RabbitClientPort:
44     default: 5672
45     description: Set rabbit subscriber port, change this if using SSL
46     type: number
47   SaharaPassword:
48     description: The password for the sahara service account, used by sahara-api.
49     type: string
50     hidden: true
51   Debug:
52     type: string
53     default: ''
54     description: Set to True to enable debugging on all services.
55   SaharaDebug:
56     default: ''
57     description: Set to True to enable debugging Sahara services.
58     type: string
59   SaharaPlugins:
60     default: ["ambari","cdh","mapr","vanilla","spark","storm"]
61     description: Sahara enabled plugin list
62     type: comma_delimited_list
63   NotificationDriver:
64     type: string
65     default: 'messagingv2'
66     description: Driver or drivers to handle sending notifications.
67     constraints:
68       - allowed_values: [ 'messagingv2', 'noop' ]
69
70 conditions:
71   service_debug_unset: {equals : [{get_param: SaharaDebug}, '']}
72
73 outputs:
74   role_data:
75     description: Role data for the Sahara base service.
76     value:
77       service_name: sahara_base
78       config_settings:
79         sahara::database_connection:
80           make_url:
81             scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
82             username: sahara
83             password: {get_param: SaharaPassword}
84             host: {get_param: [EndpointMap, MysqlInternal, host]}
85             path: /sahara
86             query:
87               read_default_file: /etc/my.cnf.d/tripleo.cnf
88               read_default_group: tripleo
89         sahara::notify::notification_driver: {get_param: NotificationDriver}
90         sahara::rabbit_password: {get_param: RabbitPassword}
91         sahara::rabbit_user: {get_param: RabbitUserName}
92         sahara::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
93         sahara::rabbit_port: {get_param: RabbitClientPort}
94         sahara::debug:
95           if:
96           - service_debug_unset
97           - {get_param: Debug }
98           - {get_param: SaharaDebug }
99         # Remove admin_password when https://review.openstack.org/442619 is merged.
100         sahara::admin_password: {get_param: SaharaPassword}
101         sahara::use_neutron: true
102         sahara::plugins: {get_param: SaharaPlugins}
103         sahara::rpc_backend: rabbit
104         sahara::db::database_db_max_retries: -1
105         sahara::db::database_max_retries: -1
106         sahara::keystone::authtoken::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
107         sahara::keystone::authtoken::auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
108         sahara::keystone::authtoken::password: {get_param: SaharaPassword}
109         sahara::keystone::authtoken::project_name: 'service'