Merge "Add global_config_settings to services' output"
[apex-tripleo-heat-templates.git] / puppet / services / ceph-external.yaml
1 heat_template_version: 2016-04-08
2
3 description: >
4   Ceph External service.
5
6 parameters:
7   CephClientKey:
8     description: The Ceph client key. Can be created with ceph-authtool --gen-print-key. Currently only used for external Ceph deployments to create the openstack user keyring.
9     type: string
10     hidden: true
11   CephClientUserName:
12     default: openstack
13     type: string
14   CephClusterFSID:
15     type: string
16     description: The Ceph cluster FSID. Must be a UUID.
17   CephExternalMonHost:
18     default: ''
19     type: string
20     description: List of externally managed Ceph Mon Host IPs. Only used for external Ceph deployments.
21   CinderRbdPoolName:
22     default: volumes
23     type: string
24   CinderBackupRbdPoolName:
25     default: backups
26     type: string
27   GlanceRbdPoolName:
28     default: images
29     type: string
30   GnocchiRbdPoolName:
31     default: metrics
32     type: string
33   NovaRbdPoolName:
34     default: vms
35     type: string
36   ServiceNetMap:
37     default: {}
38     description: Mapping of service_name -> network name. Typically set
39                  via parameter_defaults in the resource registry.  This
40                  mapping overrides those in ServiceNetMapDefaults.
41     type: json
42   DefaultPasswords:
43     default: {}
44     type: json
45   EndpointMap:
46     default: {}
47     description: Mapping of service endpoint -> protocol. Typically set
48                  via parameter_defaults in the resource registry.
49     type: json
50   MonitoringSubscriptionCephExternal:
51     default: 'overcloud-ceph-external'
52     type: string
53
54 outputs:
55   role_data:
56     description: Role data for the Ceph External service.
57     value:
58       service_name: ceph_external
59       monitoring_subscription: {get_param: MonitoringSubscriptionCephExternal}
60       config_settings:
61         tripleo::profile::base::ceph::ceph_mon_host: {get_param: CephExternalMonHost}
62         ceph::profile::params::fsid: {get_param: CephClusterFSID}
63         ceph::profile::params::client_keys:
64           str_replace:
65             template: "{
66               client.CLIENT_USER: {
67                 secret: 'CLIENT_KEY',
68                 mode: '0644',
69                 cap_mon: 'allow r',
70                 cap_osd: 'allow class-read object_prefix rbd_children, allow rwx pool=CINDER_POOL, allow rwx pool=CINDERBACKUP_POOL, allow rwx pool=NOVA_POOL, allow rwx pool=GLANCE_POOL, allow rwx pool=GNOCCHI_POOL'
71               }
72             }"
73             params:
74               CLIENT_USER: {get_param: CephClientUserName}
75               CLIENT_KEY: {get_param: CephClientKey}
76               NOVA_POOL: {get_param: NovaRbdPoolName}
77               CINDER_POOL: {get_param: CinderRbdPoolName}
78               CINDERBACKUP_POOL: {get_param: CinderBackupRbdPoolName}
79               GLANCE_POOL: {get_param: GlanceRbdPoolName}
80               GNOCCHI_POOL: {get_param: GnocchiRbdPoolName}
81       step_config: |
82         include ::tripleo::profile::base::ceph::client