Merge "Make CephValidationDelay/Retries default consistent"
[apex-tripleo-heat-templates.git] / puppet / services / mistral-base.yaml
1 heat_template_version: pike
2
3 description: >
4   Openstack Mistral base service. Shared for all Mistral 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
30   Debug:
31     default: ''
32     description: Set to True to enable debugging on all services.
33     type: string
34   MistralDebug:
35     default: ''
36     description: Set to True to enable debugging Mistral services.
37     type: string
38   RabbitPassword:
39     description: The password for RabbitMQ
40     type: string
41     hidden: true
42   RabbitUserName:
43     default: guest
44     description: The username for RabbitMQ
45     type: string
46   RabbitClientUseSSL:
47     default: false
48     description: >
49         Rabbit client subscriber parameter to specify
50         an SSL connection to the RabbitMQ host.
51     type: string
52   RabbitClientPort:
53     default: 5672
54     description: Set rabbit subscriber port, change this if using SSL
55     type: number
56   MistralPassword:
57     description: The password for the Mistral service and db account, used by the Mistral services.
58     type: string
59     hidden: true
60   KeystoneRegion:
61     type: string
62     default: 'regionOne'
63     description: Keystone region for endpoint
64   NotificationDriver:
65     type: string
66     default: 'messagingv2'
67     description: Driver or drivers to handle sending notifications.
68     constraints:
69       - allowed_values: [ 'messagingv2', 'noop' ]
70
71 conditions:
72   service_debug_unset: {equals : [{get_param: MistralDebug}, '']}
73
74 outputs:
75   role_data:
76     description: Shared role data for the Mistral services.
77     value:
78       service_name: mistral_base
79       config_settings:
80         mistral::database_connection:
81           make_url:
82             scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
83             username: mistral
84             password: {get_param: MistralPassword}
85             host: {get_param: [EndpointMap, MysqlInternal, host]}
86             path: /mistral
87             query:
88               read_default_file: /etc/my.cnf.d/tripleo.cnf
89               read_default_group: tripleo
90         mistral::notification_driver: {get_param: NotificationDriver}
91         mistral::rabbit_userid: {get_param: RabbitUserName}
92         mistral::rabbit_password: {get_param: RabbitPassword}
93         mistral::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
94         mistral::rabbit_port: {get_param: RabbitClientPort}
95         mistral::debug:
96           if:
97           - service_debug_unset
98           - {get_param: Debug }
99           - {get_param: MistralDebug }
100         mistral::keystone_password: {get_param: MistralPassword}
101         mistral::keystone_tenant: 'service'
102         mistral::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri]}
103         mistral::keystone_ec2_uri:
104           list_join:
105           - ''
106           - - {get_param: [EndpointMap, KeystoneV3Internal, uri]}
107             - '/ec2tokens'
108         mistral::identity_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
109       service_config_settings:
110         keystone:
111           mistral::keystone::auth::tenant: 'service'
112           mistral::keystone::auth::public_url: {get_param: [EndpointMap, MistralPublic, uri]}
113           mistral::keystone::auth::internal_url: {get_param: [EndpointMap, MistralInternal, uri]}
114           mistral::keystone::auth::admin_url: {get_param: [EndpointMap, MistralAdmin, uri]}
115           mistral::keystone::auth::password: {get_param: MistralPassword}
116           mistral::keystone::auth::region: {get_param: KeystoneRegion}
117         mysql:
118           mistral::db::mysql::user: mistral
119           mistral::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host_nobrackets]}
120           mistral::db::mysql::dbname: mistral
121           mistral::db::mysql::password: {get_param: MistralPassword}
122           mistral::db::mysql::allowed_hosts:
123             - '%'
124             - "%{hiera('mysql_bind_host')}"