diff options
-rw-r--r-- | ceph-storage.yaml | 12 | ||||
-rw-r--r-- | overcloud-without-mergepy.yaml | 8 | ||||
-rw-r--r-- | puppet/ceph-storage-puppet.yaml | 18 |
3 files changed, 38 insertions, 0 deletions
diff --git a/ceph-storage.yaml b/ceph-storage.yaml index 15092bae..5f9f5373 100644 --- a/ceph-storage.yaml +++ b/ceph-storage.yaml @@ -42,6 +42,18 @@ parameters: Hostname: type: string default: '' # Defaults to Heat created hostname + ExtraConfig: + default: {} + description: | + Additional configuration to inject into the cluster. Note + that CephStorageExtraConfig takes precedence over ExtraConfig. + type: json + CephStorageExtraConfig: + default: {} + description: | + Role specific additional configuration to inject into the cluster. + type: json + resources: CephStorage: diff --git a/overcloud-without-mergepy.yaml b/overcloud-without-mergepy.yaml index 12467066..2d2145e7 100644 --- a/overcloud-without-mergepy.yaml +++ b/overcloud-without-mergepy.yaml @@ -602,6 +602,12 @@ parameters: type: string constraints: - custom_constraint: nova.flavor + CephStorageExtraConfig: + default: {} + description: | + CephStorage specific configuration to inject into the cluster. Same + structure as ExtraConfig. + type: json # Hostname format for each role # Note %index% is translated into the index of the node, e.g 0/1/2 etc @@ -945,6 +951,8 @@ resources: template: {get_param: CephStorageHostnameFormat} params: '%stackname%': {get_param: 'OS::stack_name'} + ExtraConfig: {get_param: ExtraConfig} + CephStorageExtraConfig: {get_param: CephStorageExtraConfig} ControllerIpListMap: type: OS::TripleO::Network::Ports::NetIpListMap diff --git a/puppet/ceph-storage-puppet.yaml b/puppet/ceph-storage-puppet.yaml index 2d089419..cef56a8f 100644 --- a/puppet/ceph-storage-puppet.yaml +++ b/puppet/ceph-storage-puppet.yaml @@ -42,6 +42,18 @@ parameters: Hostname: type: string default: '' # Defaults to Heat created hostname + ExtraConfig: + default: {} + description: | + Additional hiera configuration to inject into the cluster. Note + that CephStorageExtraConfig takes precedence over ExtraConfig. + type: json + CephStorageExtraConfig: + default: {} + description: | + Role specific additional hiera configuration to inject into the cluster. + type: json + resources: CephStorage: @@ -118,6 +130,8 @@ resources: hiera: hierarchy: - heat_config_%{::deploy_config_name} + - ceph_extraconfig + - extraconfig - ceph_cluster # provided by CephClusterConfig - ceph - '"%{::osfamily}"' @@ -125,6 +139,10 @@ resources: datafiles: common: raw_data: {get_file: hieradata/common.yaml} + ceph_extraconfig: + mapped_data: {get_param: CephStorageExtraConfig} + extraconfig: + mapped_data: {get_param: ExtraConfig} ceph: raw_data: {get_file: hieradata/ceph.yaml} mapped_data: |