From 9207b00ace00d6fdf6ff26f060e47ae15e3cb4e2 Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Mon, 4 Dec 2017 15:20:45 +0100 Subject: [PATCH] Make CephPools override properties of other pools Previously it was possible to use CephPools tol override properties of any pool, not only the additional ones defined via CephPools parameter. This change restores the functionality which was broken with the migration of the templates to ceph-ansible. Change-Id: Id184d5e7fe60c789944159ea32dc1267aca9decb Closes-Bug: #1734093 --- docker/services/ceph-ansible/ceph-base.yaml | 37 +++++++++++---------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/docker/services/ceph-ansible/ceph-base.yaml b/docker/services/ceph-ansible/ceph-base.yaml index 9270a48e93..a9899c5638 100644 --- a/docker/services/ceph-ansible/ceph-base.yaml +++ b/docker/services/ceph-ansible/ceph-base.yaml @@ -218,23 +218,26 @@ outputs: ceph_origin: distro openstack_config: true openstack_pools: - list_concat_unique: - - repeat: - template: - name: <%pool%> - pg_num: {get_param: CephPoolDefaultPgNum} - rule_name: "" - for_each: - <%pool%>: - list_concat_unique: - - - {get_param: CinderRbdPoolName} - - {get_param: CinderBackupRbdPoolName} - - {get_param: NovaRbdPoolName} - - {get_param: GlanceRbdPoolName} - - {get_param: GnocchiRbdPoolName} - # CinderRbdExtraPools is a list (do not indent further) - - {get_param: CinderRbdExtraPools} - - {get_param: CephPools} + yaql: + expression: $.data.toDict($.get('name')).values() + data: + list_concat_unique: + - repeat: + template: + name: <%pool%> + pg_num: {get_param: CephPoolDefaultPgNum} + rule_name: "" + for_each: + <%pool%>: + list_concat_unique: + - - {get_param: CinderRbdPoolName} + - {get_param: CinderBackupRbdPoolName} + - {get_param: NovaRbdPoolName} + - {get_param: GlanceRbdPoolName} + - {get_param: GnocchiRbdPoolName} + # CinderRbdExtraPools is a list (do not indent further) + - {get_param: CinderRbdExtraPools} + - {get_param: CephPools} openstack_keys: &openstack_keys - name: list_join: