6ada9c25a1c2b18b8e4c1b32c2f6142cdf183869
[apex-tripleo-heat-templates.git] / puppet / services / heat-base.yaml
1 heat_template_version: ocata
2
3 description: >
4   Openstack Heat base service. Shared for all Heat services.
5
6 parameters:
7   Debug:
8     default: ''
9     description: Set to True to enable debugging on all services.
10     type: string
11   RabbitPassword:
12     description: The password for RabbitMQ
13     type: string
14     hidden: true
15   RabbitUserName:
16     default: guest
17     description: The username for RabbitMQ
18     type: string
19   RabbitClientUseSSL:
20     default: false
21     description: >
22         Rabbit client subscriber parameter to specify
23         an SSL connection to the RabbitMQ host.
24     type: string
25   RabbitClientPort:
26     default: 5672
27     description: Set rabbit subscriber port, change this if using SSL
28     type: number
29   ServiceNetMap:
30     default: {}
31     description: Mapping of service_name -> network name. Typically set
32                  via parameter_defaults in the resource registry.  This
33                  mapping overrides those in ServiceNetMapDefaults.
34     type: json
35   HeatPassword:
36     description: The password for the Heat service and db account, used by the Heat services.
37     type: string
38     hidden: true
39   DefaultPasswords:
40     default: {}
41     type: json
42   EndpointMap:
43     default: {}
44     description: Mapping of service endpoint -> protocol. Typically set
45                  via parameter_defaults in the resource registry.
46     type: json
47   HeatCronPurgeDeletedEnsure:
48     type: string
49     description: >
50         Cron to purge db entries marked as deleted and older than $age - Ensure
51     default: 'present'
52   HeatCronPurgeDeletedMinute:
53     type: string
54     description: >
55         Cron to purge db entries marked as deleted and older than $age - Minute
56     default: '1'
57   HeatCronPurgeDeletedHour:
58     type: string
59     description: >
60         Cron to purge db entries marked as deleted and older than $age - Hour
61     default: '0'
62   HeatCronPurgeDeletedMonthday:
63     type: string
64     description: >
65         Cron to purge db entries marked as deleted and older than $age - Month Day
66     default: '*'
67   HeatCronPurgeDeletedMonth:
68     type: string
69     description: >
70         Cron to purge db entries marked as deleted and older than $age - Month
71     default: '*'
72   HeatCronPurgeDeletedWeekday:
73     type: string
74     description: >
75         Cron to purge db entries marked as deleted and older than $age - Week Day
76     default: '*'
77   HeatCronPurgeDeletedMaxDelay:
78     type: string
79     description: >
80         Cron to purge db entries marked as deleted and older than $age - Max Delay
81     default: '3600'
82   HeatCronPurgeDeletedUser:
83     type: string
84     description: >
85         Cron to purge db entries marked as deleted and older than $age - User
86     default: 'heat'
87   HeatCronPurgeDeletedAge:
88     type: string
89     description: >
90         Cron to purge db entries marked as deleted and older than $age - Age
91     default: '30'
92   HeatCronPurgeDeletedAgeType:
93     type: string
94     description: >
95         Cron to purge db entries marked as deleted and older than $age - Age type
96     default: 'days'
97   HeatCronPurgeDeletedDestination:
98     type: string
99     description: >
100         Cron to purge db entries marked as deleted and older than $age - Log destination
101     default: '/dev/null'
102   HeatMaxJsonBodySize:
103     default: 1048576
104     description: Maximum raw byte size of the Heat API JSON request body.
105     type: number
106
107 outputs:
108   role_data:
109     description: Shared role data for the Heat services.
110     value:
111       service_name: heat_base
112       config_settings:
113         heat::rabbit_userid: {get_param: RabbitUserName}
114         heat::rabbit_password: {get_param: RabbitPassword}
115         heat::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
116         heat::rabbit_port: {get_param: RabbitClientPort}
117         heat::debug: {get_param: Debug}
118         heat::enable_proxy_headers_parsing: true
119         heat::rpc_response_timeout: 600
120         # We need this because the default heat policy.json no longer works on TripleO
121         # https://git.openstack.org/cgit/openstack/heat/commit/?id=ac86702172ddf01f5bdc3f3cd99d2e32ad9b7024
122         heat::policy::policies:
123           context_is_admin:
124             key: 'context_is_admin'
125             value: 'role:admin'
126         heat::rabbit_heartbeat_timeout_threshold: 60
127         heat::keystone::authtoken::project_name: 'service'
128         heat::keystone::authtoken::user_domain_name: 'Default'
129         heat::keystone::authtoken::project_domain_name: 'Default'
130         heat::keystone::authtoken::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
131         heat::keystone::authtoken::auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
132         heat::keystone::authtoken::password: {get_param: HeatPassword}
133         heat::keystone::domain::domain_name: 'heat_stack'
134         heat::keystone::domain::domain_admin: 'heat_stack_domain_admin'
135         heat::keystone::domain::domain_admin_email: 'heat_stack_domain_admin@localhost'
136         heat::db::database_db_max_retries: -1
137         heat::db::database_max_retries: -1
138         heat::yaql_memory_quota: 100000
139         heat::yaql_limit_iterators: 1000
140         heat::cron::purge_deleted::ensure: {get_param: HeatCronPurgeDeletedEnsure}
141         heat::cron::purge_deleted::minute: {get_param: HeatCronPurgeDeletedMinute}
142         heat::cron::purge_deleted::hour: {get_param: HeatCronPurgeDeletedHour}
143         heat::cron::purge_deleted::monthday: {get_param: HeatCronPurgeDeletedMonthday}
144         heat::cron::purge_deleted::month: {get_param: HeatCronPurgeDeletedMonth}
145         heat::cron::purge_deleted::weekday: {get_param: HeatCronPurgeDeletedWeekday}
146         heat::cron::purge_deleted::maxdelay: {get_param: HeatCronPurgeDeletedMaxDelay}
147         heat::cron::purge_deleted::user: {get_param: HeatCronPurgeDeletedUser}
148         heat::cron::purge_deleted::age: {get_param: HeatCronPurgeDeletedAge}
149         heat::cron::purge_deleted::age_type: {get_param: HeatCronPurgeDeletedAgeType}
150         heat::cron::purge_deleted::destination: {get_param: HeatCronPurgeDeletedDestination}
151         heat::max_json_body_size: {get_param: HeatMaxJsonBodySize}
152       service_config_settings:
153         keystone:
154           tripleo::profile::base::keystone::heat_admin_domain: 'heat_stack'
155           tripleo::profile::base::keystone::heat_admin_user: 'heat_stack_domain_admin'
156           tripleo::profile::base::keystone::heat_admin_email: 'heat_stack_domain_admin@localhost'