Merge "Fix distinguishing between stack-create and stack-update"
[apex-tripleo-heat-templates.git] / puppet / services / glance-api.yaml
1 heat_template_version: 2016-04-08
2
3 description: >
4   OpenStack Glance API service configured with Puppet
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   MysqlVirtualIPUri:
13     type: string
14     default: ''
15   Debug:
16     default: ''
17     description: Set to True to enable debugging on all services.
18     type: string
19   GlanceNotifierStrategy:
20     description: Strategy to use for Glance notification queue
21     type: string
22     default: noop
23   GlanceLogFile:
24     description: The filepath of the file to use for logging messages from Glance.
25     type: string
26     default: ''
27   GlancePassword:
28     description: The password for the glance service and db account, used by the glance services.
29     type: string
30     hidden: true
31   GlanceBackend:
32     default: swift
33     description: The short name of the Glance backend to use. Should be one
34       of swift, rbd, or file
35     type: string
36     constraints:
37     - allowed_values: ['swift', 'file', 'rbd']
38   GlanceWorkers:
39     default: 0
40     description: Number of workers for Glance service.
41     type: number
42   RabbitPassword:
43     description: The password for RabbitMQ
44     type: string
45     hidden: true
46   RabbitUserName:
47     default: guest
48     description: The username for RabbitMQ
49     type: string
50   RabbitClientPort:
51     default: 5672
52     description: Set rabbit subscriber port, change this if using SSL
53     type: number
54   RabbitClientUseSSL:
55     default: false
56     description: >
57         Rabbit client subscriber parameter to specify
58         an SSL connection to the RabbitMQ host.
59     type: string
60
61 outputs:
62   role_data:
63     description: Role data for the Glance API role.
64     value:
65       config_settings:
66         glance_dsn: &glance_dsn
67           list_join:
68             - ''
69             - - 'mysql+pymysql://glance:'
70               - {get_param: GlancePassword}
71               - '@'
72               - {get_param: MysqlVirtualIPUri}
73               - '/glance'
74         glance::api::bind_port: {get_param: [EndpointMap, GlanceInternal, port]}
75         glance::api::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri] }
76         glance::api::identity_uri: { get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix] }
77         glance::api::registry_host:
78           str_replace:
79             template: "'REGISTRY_HOST'"
80             params:
81               REGISTRY_HOST: {get_param: [EndpointMap, GlanceRegistryInternal, host]}
82         glance::api::keystone_password: {get_param: GlancePassword}
83         glance::api::debug: {get_param: Debug}
84         glance::api::workers: {get_param: GlanceWorkers}
85         glance_notifier_strategy: {get_param: GlanceNotifierStrategy}
86         glance_log_file: {get_param: GlanceLogFile}
87         glance::api::database_connection: *glance_dsn
88         glance::backend::swift::swift_store_auth_address: {get_param: [EndpointMap, KeystoneInternal, uri] }
89         glance::backend::swift::swift_store_user: service:glance
90         glance::backend::swift::swift_store_key: {get_param: GlancePassword}
91         glance_backend: {get_param: GlanceBackend}
92         glance::db::mysql::password: {get_param: GlancePassword}
93         glance::notify::rabbitmq::rabbit_userid: {get_param: RabbitUserName}
94         glance::notify::rabbitmq::rabbit_port: {get_param: RabbitClientPort}
95         glance::notify::rabbitmq::rabbit_password: {get_param: RabbitPassword}
96         glance::notify::rabbitmq::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
97       step_config: |
98         include ::tripleo::profile::base::glance::api