Move ceph cluster config out of allNodesConfig
[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   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   EndpointMap:
17     default: {}
18     description: Mapping of service endpoint -> protocol. Typically set
19                  via parameter_defaults in the resource registry.
20     type: json
21   CephClientUserName:
22     default: openstack
23     type: string
24   Debug:
25     default: ''
26     description: Set to True to enable debugging on all services.
27     type: string
28   GlanceNotifierStrategy:
29     description: Strategy to use for Glance notification queue
30     type: string
31     default: noop
32   GlanceLogFile:
33     description: The filepath of the file to use for logging messages from Glance.
34     type: string
35     default: ''
36   GlancePassword:
37     description: The password for the glance service and db account, used by the glance services.
38     type: string
39     hidden: true
40   GlanceBackend:
41     default: swift
42     description: The short name of the Glance backend to use. Should be one
43       of swift, rbd, or file
44     type: string
45     constraints:
46     - allowed_values: ['swift', 'file', 'rbd']
47   GlanceWorkers:
48     default: 0
49     description: Number of workers for Glance service.
50     type: number
51   GlanceRbdPoolName:
52     default: images
53     type: string
54   RabbitPassword:
55     description: The password for RabbitMQ
56     type: string
57     hidden: true
58   RabbitUserName:
59     default: guest
60     description: The username for RabbitMQ
61     type: string
62   RabbitClientPort:
63     default: 5672
64     description: Set rabbit subscriber port, change this if using SSL
65     type: number
66   RabbitClientUseSSL:
67     default: false
68     description: >
69         Rabbit client subscriber parameter to specify
70         an SSL connection to the RabbitMQ host.
71     type: string
72   KeystoneRegion:
73     type: string
74     default: 'regionOne'
75     description: Keystone region for endpoint
76
77 outputs:
78   role_data:
79     description: Role data for the Glance API role.
80     value:
81       service_name: glance_api
82       config_settings:
83         glance::api::database_connection:
84           list_join:
85             - ''
86             - - {get_param: [EndpointMap, MysqlInternal, protocol]}
87               - '://glance:'
88               - {get_param: GlancePassword}
89               - '@'
90               - {get_param: [EndpointMap, MysqlInternal, host]}
91               - '/glance'
92         glance::api::bind_port: {get_param: [EndpointMap, GlanceInternal, port]}
93         glance::api::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri] }
94         glance::api::identity_uri: { get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix] }
95         glance::api::registry_host:
96           str_replace:
97             template: "'REGISTRY_HOST'"
98             params:
99               REGISTRY_HOST: {get_param: [EndpointMap, GlanceRegistryInternal, host]}
100         glance::api::keystone_password: {get_param: GlancePassword}
101         glance::api::enable_proxy_headers_parsing: true
102         glance::api::debug: {get_param: Debug}
103         glance::api::workers: {get_param: GlanceWorkers}
104         glance_notifier_strategy: {get_param: GlanceNotifierStrategy}
105         glance_log_file: {get_param: GlanceLogFile}
106         glance::backend::swift::swift_store_auth_address: {get_param: [EndpointMap, KeystoneInternal, uri] }
107         glance::backend::swift::swift_store_user: service:glance
108         glance::backend::swift::swift_store_key: {get_param: GlancePassword}
109         glance::backend::swift::swift_store_create_container_on_put: true
110         glance::backend::rbd::rbd_store_pool: {get_param: GlanceRbdPoolName}
111         glance::backend::rbd::rbd_store_user: {get_param: CephClientUserName}
112         glance_backend: {get_param: GlanceBackend}
113         glance::db::mysql::password: {get_param: GlancePassword}
114         glance::notify::rabbitmq::rabbit_userid: {get_param: RabbitUserName}
115         glance::notify::rabbitmq::rabbit_port: {get_param: RabbitClientPort}
116         glance::notify::rabbitmq::rabbit_password: {get_param: RabbitPassword}
117         glance::notify::rabbitmq::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
118         glance::keystone::auth::public_url: {get_param: [EndpointMap, GlancePublic, uri]}
119         glance::keystone::auth::internal_url: {get_param: [EndpointMap, GlanceInternal, uri]}
120         glance::keystone::auth::admin_url: {get_param: [EndpointMap, GlanceAdmin, uri]}
121         glance::keystone::auth::password: {get_param: GlancePassword }
122         glance::keystone::auth::region: {get_param: KeystoneRegion}
123         glance::registry::db::database_db_max_retries: -1
124         glance::registry::db::database_max_retries: -1
125         tripleo.glance_api.firewall_rules:
126           '112 glance_api':
127             dport:
128               - 9292
129               - 13292
130         glance::keystone::auth::tenant: 'service'
131         glance::api::keystone_tenant: 'service'
132         glance::api::pipeline: 'keystone'
133         glance::api::show_image_direct_url: true
134         # NOTE: bind IP is found in Heat replacing the network name with the
135         # local node IP for the given network; replacement examples
136         # (eg. for internal_api):
137         # internal_api -> IP
138         # internal_api_uri -> [IP]
139         # internal_api_subnet - > IP/CIDR
140         glance::api::bind_host: {get_param: [ServiceNetMap, GlanceApiNetwork]}
141       step_config: |
142         include ::tripleo::profile::base::glance::api