Move nova::db data within service template
[apex-tripleo-heat-templates.git] / puppet / services / nova-base.yaml
1 heat_template_version: 2016-04-08
2
3 description: >
4   OpenStack Nova base service. Shared for all Nova services.
5
6 parameters:
7   EndpointMap:
8     default: {}
9     description: Mapping of service endpoint -> protocol. Typically set
10                  via parameter_defaults in the resource registry.
11     type: json
12   NovaPassword:
13     description: The password for the nova service and db account, used by nova-api.
14     type: string
15     hidden: true
16   RabbitPassword:
17     description: The password for RabbitMQ
18     type: string
19     hidden: true
20   RabbitUserName:
21     default: guest
22     description: The username for RabbitMQ
23     type: string
24   RabbitClientUseSSL:
25     default: false
26     description: >
27         Rabbit client subscriber parameter to specify
28         an SSL connection to the RabbitMQ host.
29     type: string
30   RabbitClientPort:
31     default: 5672
32     description: Set rabbit subscriber port, change this if using SSL
33     type: number
34   Debug:
35     type: string
36     default: ''
37     description: Set to True to enable debugging on all services.
38
39 outputs:
40   role_data:
41     description: Role data for the Neutron base service.
42     value:
43       config_settings:
44         nova::rabbit_password: {get_param: RabbitPassword}
45         nova::rabbit_user: {get_param: RabbitUserName}
46         nova::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
47         nova::rabbit_port: {get_param: RabbitClientPort}
48         nova::database_connection:
49           list_join:
50             - ''
51             - - {get_param: [EndpointMap, MysqlInternal, protocol]}
52               - '://nova:'
53               - {get_param: NovaPassword}
54               - '@'
55               - {get_param: [EndpointMap, MysqlInternal, host]}
56               - '/nova'
57         nova::api_database_connection:
58           list_join:
59             - ''
60             - - {get_param: [EndpointMap, MysqlInternal, protocol]}
61               - '://nova_api:'
62               - {get_param: NovaPassword}
63               - '@'
64               - {get_param: [EndpointMap, MysqlInternal, host]}
65               - '/nova_api'
66         nova::db::mysql::password: {get_input: nova_password}
67         nova::db::mysql::user: nova
68         nova::db::mysql::host: {get_param: [EndpointMap, MysqlNoBracketsInternal, host]}
69         nova::db::mysql::dbname: nova
70         nova::db::mysql::allowed_hosts:
71           - '%'
72           - "%{hiera('mysql_bind_host')}"
73         nova::db::mysql_api::password: {get_input: nova_password}
74         nova::db::mysql_api::user: nova_api
75         nova::db::mysql_api::host: {get_param: [EndpointMap, MysqlNoBracketsInternal, host]}
76         nova::db::mysql_api::dbname: nova_api
77         nova::db::mysql_api::allowed_hosts:
78           - '%'
79           - "%{hiera('mysql_bind_host')}"
80         nova::debug: {get_param: Debug}