From 7aeb416528df98f3e5ba0dda8878f7b9c6bb55ec Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Fri, 1 Jul 2016 14:45:31 +0200 Subject: Add global_config_settings to services' output The new global_config_settings output is meant to contain additional hieradata distributed by the services to all role types. Change-Id: I1beff8f7b12a4178e6081de6134cd8e67794d710 --- overcloud.yaml | 46 ++++++++++++++++++++++++++++++++++++++----- puppet/services/README.rst | 2 ++ puppet/services/services.yaml | 5 +++++ 3 files changed, 48 insertions(+), 5 deletions(-) diff --git a/overcloud.yaml b/overcloud.yaml index d60e8224..47a59bdb 100644 --- a/overcloud.yaml +++ b/overcloud.yaml @@ -410,7 +410,15 @@ resources: params: '%stackname%': {get_param: 'OS::stack_name'} NodeIndex: '%index%' - ServiceConfigSettings: {get_attr: [ControllerServiceChain, role_data, config_settings]} + ServiceConfigSettings: + map_merge: + - get_attr: [ControllerServiceChain, role_data, config_settings] + - get_attr: [ControllerServiceChain, role_data, global_config_settings] + - get_attr: [ComputeServiceChain, role_data, global_config_settings] + - get_attr: [BlockStorageServiceChain, role_data, global_config_settings] + - get_attr: [ObjectStorageServiceChain, role_data, global_config_settings] + - get_attr: [CephStorageServiceChain, role_data, global_config_settings] + - get_attr: [ControllerServiceChain, role_data, global_config_settings] ServiceNames: {get_attr: [ControllerServiceChain, role_data, service_names]} ComputeServiceChain: @@ -441,7 +449,14 @@ resources: params: '%stackname%': {get_param: 'OS::stack_name'} NodeIndex: '%index%' - ServiceConfigSettings: {get_attr: [ComputeServiceChain, role_data, config_settings]} + ServiceConfigSettings: + map_merge: + - get_attr: [ComputeServiceChain, role_data, config_settings] + - get_attr: [ControllerServiceChain, role_data, global_config_settings] + - get_attr: [ComputeServiceChain, role_data, global_config_settings] + - get_attr: [BlockStorageServiceChain, role_data, global_config_settings] + - get_attr: [ObjectStorageServiceChain, role_data, global_config_settings] + - get_attr: [CephStorageServiceChain, role_data, global_config_settings] ServiceNames: {get_attr: [ComputeServiceChain, role_data, service_names]} BlockStorageServiceChain: @@ -473,7 +488,14 @@ resources: CloudDomain: {get_param: CloudDomain} ServerMetadata: {get_param: ServerMetadata} NodeIndex: '%index%' - ServiceConfigSettings: {get_attr: [BlockStorageServiceChain, role_data, config_settings]} + ServiceConfigSettings: + map_merge: + - get_attr: [BlockStorageServiceChain, role_data, config_settings] + - get_attr: [ControllerServiceChain, role_data, global_config_settings] + - get_attr: [ComputeServiceChain, role_data, global_config_settings] + - get_attr: [BlockStorageServiceChain, role_data, global_config_settings] + - get_attr: [ObjectStorageServiceChain, role_data, global_config_settings] + - get_attr: [CephStorageServiceChain, role_data, global_config_settings] ServiceNames: {get_attr: [BlockStorageServiceChain, role_data, service_names]} ObjectStorageServiceChain: @@ -505,7 +527,14 @@ resources: CloudDomain: {get_param: CloudDomain} ServerMetadata: {get_param: ServerMetadata} NodeIndex: '%index%' - ServiceConfigSettings: {get_attr: [ObjectStorageServiceChain, role_data, config_settings]} + ServiceConfigSettings: + map_merge: + - get_attr: [ObjectStorageServiceChain, role_data, config_settings] + - get_attr: [ControllerServiceChain, role_data, global_config_settings] + - get_attr: [ComputeServiceChain, role_data, global_config_settings] + - get_attr: [BlockStorageServiceChain, role_data, global_config_settings] + - get_attr: [ObjectStorageServiceChain, role_data, global_config_settings] + - get_attr: [CephStorageServiceChain, role_data, global_config_settings] ServiceNames: {get_attr: [ObjectStorageServiceChain, role_data, service_names]} CephStorageServiceChain: @@ -537,7 +566,14 @@ resources: CloudDomain: {get_param: CloudDomain} ServerMetadata: {get_param: ServerMetadata} NodeIndex: '%index%' - ServiceConfigSettings: {get_attr: [CephStorageServiceChain, role_data, config_settings]} + ServiceConfigSettings: + map_merge: + - get_attr: [CephStorageServiceChain, role_data, config_settings] + - get_attr: [ControllerServiceChain, role_data, global_config_settings] + - get_attr: [ComputeServiceChain, role_data, global_config_settings] + - get_attr: [BlockStorageServiceChain, role_data, global_config_settings] + - get_attr: [ObjectStorageServiceChain, role_data, global_config_settings] + - get_attr: [CephStorageServiceChain, role_data, global_config_settings] ServiceNames: {get_attr: [CephStorageServiceChain, role_data, service_names]} ControllerIpListMap: diff --git a/puppet/services/README.rst b/puppet/services/README.rst index 15c8c1f1..8fe51fa3 100644 --- a/puppet/services/README.rst +++ b/puppet/services/README.rst @@ -31,6 +31,8 @@ are re-asserted when applying latter ones. * config_settings: Custom hiera settings for this service. + * global_config_settings: Additional hiera settings distributed to all roles. + * step_config: A puppet manifest that is used to step through the deployment sequence. Each sequence is given a "step" (via hiera('step') that provides information for when puppet classes should activate themselves. diff --git a/puppet/services/services.yaml b/puppet/services/services.yaml index bb40001a..61606e6b 100644 --- a/puppet/services/services.yaml +++ b/puppet/services/services.yaml @@ -50,4 +50,9 @@ outputs: expression: list($.data.s_names.where($ != null)) data: {s_names: {get_attr: [ServiceChain, role_data, service_name]}} config_settings: {map_merge: {get_attr: [ServiceChain, role_data, config_settings]}} + global_config_settings: + map_merge: + yaql: + expression: list($.data.configs.where($ != null)) + data: {configs: {get_attr: [ServiceChain, role_data, global_config_settings]}} step_config: {list_join: ["\n", {get_attr: [ServiceChain, role_data, step_config]}]} -- cgit 1.2.3-korg