Merge "Allow overrides in non global ceph.conf sections"

This commit is contained in:
Zuul 2019-08-07 15:34:39 +00:00 committed by Gerrit Code Review
commit da82b0a5e6
3 changed files with 46 additions and 18 deletions

View File

@ -126,3 +126,8 @@ parameter_defaults:
- tty5 - tty5
- tty6 - tty6
ContainerCli: podman ContainerCli: podman
CephConfigOverrides:
global:
globalkey: globalvalue
osd:
osdkey: osdvalue

View File

@ -102,3 +102,5 @@ parameter_defaults:
- tty6 - tty6
# Remove ContainerCli once this scenario is tested on CentOS8 # Remove ContainerCli once this scenario is tested on CentOS8
ContainerCli: docker ContainerCli: docker
CephConfigOverrides:
globalkey: globalvalue

View File

@ -210,6 +210,10 @@ conditions:
equals: equals:
- {get_param: CephAnsibleSkipTags} - {get_param: CephAnsibleSkipTags}
- '' - ''
ceph_config_overrides_with_sections:
yaql:
data: {get_param: CephConfigOverrides}
expression: $.data.keys().any(predicate => $ in ['global', 'mon', 'mgr', 'osd', 'mds', 'client'])
resources: resources:
ContainerImageUrlParts: ContainerImageUrlParts:
@ -238,6 +242,29 @@ resources:
expression: $.data.rightSplit(':', 1)[1] expression: $.data.rightSplit(':', 1)[1]
data: {get_param: ContainerCephDaemonImage} data: {get_param: ContainerCephDaemonImage}
DefaultCephConfigOverrides:
type: OS::Heat::Value
properties:
type: json
value:
global:
osd_pool_default_size: {get_param: CephPoolDefaultSize}
osd_pool_default_pg_num: {get_param: CephPoolDefaultPgNum}
osd_pool_default_pgp_num: {get_param: CephPoolDefaultPgNum}
rgw_keystone_api_version: 3
rgw_keystone_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
rgw_keystone_accepted_roles: 'Member, admin'
rgw_keystone_accepted_admin_roles: ResellerAdmin
rgw_keystone_admin_domain: default
rgw_keystone_admin_project: service
rgw_keystone_admin_user: swift
rgw_keystone_admin_password: {get_param: SwiftPassword}
rgw_keystone_implicit_tenants: 'true'
rgw_keystone_revocation_interval: '0'
rgw_s3_auth_use_keystone: 'true'
rgw_swift_versioning_enabled: 'true'
rgw_swift_account_in_url: 'true'
CephBaseAnsibleVars: CephBaseAnsibleVars:
type: OS::Heat::Value type: OS::Heat::Value
properties: properties:
@ -360,24 +387,18 @@ resources:
mode: "0600" mode: "0600"
keys: *openstack_keys keys: *openstack_keys
ceph_conf_overrides: ceph_conf_overrides:
global: if:
map_merge: - ceph_config_overrides_with_sections
- osd_pool_default_size: {get_param: CephPoolDefaultSize} - yaql:
osd_pool_default_pg_num: {get_param: CephPoolDefaultPgNum} data:
osd_pool_default_pgp_num: {get_param: CephPoolDefaultPgNum} default:
rgw_keystone_api_version: 3 map_merge:
rgw_keystone_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]} - {get_attr: [DefaultCephConfigOverrides, value]}
rgw_keystone_accepted_roles: 'Member, admin' overrides: {get_param: CephConfigOverrides}
rgw_keystone_accepted_admin_roles: ResellerAdmin expression: $.data.default.mergeWith($.data.overrides)
rgw_keystone_admin_domain: default - global:
rgw_keystone_admin_project: service map_merge:
rgw_keystone_admin_user: swift - {get_attr: [DefaultCephConfigOverrides, value, global]}
rgw_keystone_admin_password: {get_param: SwiftPassword}
rgw_keystone_implicit_tenants: 'true'
rgw_keystone_revocation_interval: '0'
rgw_s3_auth_use_keystone: 'true'
rgw_swift_versioning_enabled: 'true'
rgw_swift_account_in_url: 'true'
- {get_param: CephConfigOverrides} - {get_param: CephConfigOverrides}
ip_version: ip_version:
if: if: