From c8a266d99e4844c14526dccbad9ce3f48d8740a8 Mon Sep 17 00:00:00 2001 From: James Slagle Date: Thu, 20 Apr 2017 15:45:49 -0400 Subject: Add os-collect-config data as an output Adds a new output, ServerOsCollectConfigData, which is the os-collect-config configuration associated with each server resource. This can be used to [pre]configure the os-collect-config agents on deployed-server's. Having the data available as a stack output is more user friendly than having to query several nested levels of stack resources, and then inspect resource metadata. implements blueprint split-stack-default Change-Id: Iaf062f1a72e2a9e4d97f84c67f72408a6b5cebfc Depends-On: I8acfd67cd8138d587cc362184c84a08134bf3157 --- deployed-server/deployed-server.yaml | 2 ++ overcloud.j2.yaml | 15 +++++++++++++++ puppet/blockstorage-role.yaml | 3 +++ puppet/cephstorage-role.yaml | 3 +++ puppet/compute-role.yaml | 3 +++ puppet/controller-role.yaml | 3 +++ puppet/objectstorage-role.yaml | 3 +++ puppet/role.role.j2.yaml | 3 +++ ...dd-server-os-collect-config-data-eeea2f57b3a82654.yaml | 6 ++++++ 9 files changed, 41 insertions(+) create mode 100644 releasenotes/notes/add-server-os-collect-config-data-eeea2f57b3a82654.yaml diff --git a/deployed-server/deployed-server.yaml b/deployed-server/deployed-server.yaml index 0847bfbf..3d076561 100644 --- a/deployed-server/deployed-server.yaml +++ b/deployed-server/deployed-server.yaml @@ -133,3 +133,5 @@ outputs: - {get_attr: [ControlPlanePort, fixed_ips, 0, ip_address]} name: value: {get_attr: [HostsEntryDeployment, hostname]} + os_collect_config: + value: {get_attr: [deployed-server, os_collect_config]} diff --git a/overcloud.j2.yaml b/overcloud.j2.yaml index c7db59f8..17bba6ba 100644 --- a/overcloud.j2.yaml +++ b/overcloud.j2.yaml @@ -741,6 +741,15 @@ resources: {{role.name}}: {get_attr: [{{role.name}}ServiceChainRoleData, value]} {% endfor %} + ServerOsCollectConfigData: + type: OS::Heat::Value + properties: + type: json + value: +{% for role in roles %} + {{role.name}}: {get_attr: [{{role.name}}, attributes, os_collect_config]} +{% endfor %} + outputs: ManagedEndpoints: description: Asserts that the keystone endpoints have been provisioned. @@ -790,4 +799,10 @@ outputs: value: {% for role in roles %} {{role.name}}: {get_attr: [{{role.name}}NetworkHostnameMap, value]} +{% endfor %} + ServerOsCollectConfigData: + description: The os-collect-config configuration associated with each server resource + value: +{% for role in roles %} + {{role.name}}: {get_attr: [{{role.name}}, attributes, os_collect_config]} {% endfor %} diff --git a/puppet/blockstorage-role.yaml b/puppet/blockstorage-role.yaml index 08bc03a5..e2cc998c 100644 --- a/puppet/blockstorage-role.yaml +++ b/puppet/blockstorage-role.yaml @@ -614,3 +614,6 @@ CTLPLANEIP,CTLPLANEHOST.DOMAIN,CTLPLANEHOST HOSTSSHPUBKEY" management_ip_address: description: IP address of the server in the management network value: {get_attr: [ManagementPort, ip_address]} + os_collect_config: + description: The os-collect-config configuration associated with this server resource + value: {get_attr: [BlockStorage, os_collect_config]} diff --git a/puppet/cephstorage-role.yaml b/puppet/cephstorage-role.yaml index 3f596423..22f03897 100644 --- a/puppet/cephstorage-role.yaml +++ b/puppet/cephstorage-role.yaml @@ -625,3 +625,6 @@ CTLPLANEIP,CTLPLANEHOST.DOMAIN,CTLPLANEHOST HOSTSSHPUBKEY" management_ip_address: description: IP address of the server in the management network value: {get_attr: [ManagementPort, ip_address]} + os_collect_config: + description: The os-collect-config configuration associated with this server resource + value: {get_attr: [CephStorage, os_collect_config]} diff --git a/puppet/compute-role.yaml b/puppet/compute-role.yaml index 8a3c487a..2584b322 100644 --- a/puppet/compute-role.yaml +++ b/puppet/compute-role.yaml @@ -651,3 +651,6 @@ CTLPLANEIP,CTLPLANEHOST.DOMAIN,CTLPLANEHOST HOSTSSHPUBKEY" value: {get_resource: NovaCompute} condition: server_not_blacklisted + os_collect_config: + description: The os-collect-config configuration associated with this server resource + value: {get_attr: [NovaCompute, os_collect_config]} diff --git a/puppet/controller-role.yaml b/puppet/controller-role.yaml index 6bc23669..0b763323 100644 --- a/puppet/controller-role.yaml +++ b/puppet/controller-role.yaml @@ -697,3 +697,6 @@ CTLPLANEIP,CTLPLANEHOST.DOMAIN,CTLPLANEHOST HOSTSSHPUBKEY" tls_cert_modulus_md5: description: MD5 checksum of the TLS Certificate Modulus value: {get_attr: [NodeTLSData, cert_modulus_md5]} + os_collect_config: + description: The os-collect-config configuration associated with this server resource + value: {get_attr: [Controller, os_collect_config]} diff --git a/puppet/objectstorage-role.yaml b/puppet/objectstorage-role.yaml index c35bb250..4dd7a31b 100644 --- a/puppet/objectstorage-role.yaml +++ b/puppet/objectstorage-role.yaml @@ -613,3 +613,6 @@ CTLPLANEIP,CTLPLANEHOST.DOMAIN,CTLPLANEHOST HOSTSSHPUBKEY" management_ip_address: description: IP address of the server in the management network value: {get_attr: [ManagementPort, ip_address]} + os_collect_config: + description: The os-collect-config configuration associated with this server resource + value: {get_attr: [SwiftStorage, os_collect_config]} diff --git a/puppet/role.role.j2.yaml b/puppet/role.role.j2.yaml index b7f47594..61418c2b 100644 --- a/puppet/role.role.j2.yaml +++ b/puppet/role.role.j2.yaml @@ -648,3 +648,6 @@ CTLPLANEIP,CTLPLANEHOST.DOMAIN,CTLPLANEHOST HOSTSSHPUBKEY" management_ip_address: description: IP address of the server in the management network value: {get_attr: [ManagementPort, ip_address]} + os_collect_config: + description: The os-collect-config configuration associated with this server resource + value: {get_attr: [{{role}}, os_collect_config]} diff --git a/releasenotes/notes/add-server-os-collect-config-data-eeea2f57b3a82654.yaml b/releasenotes/notes/add-server-os-collect-config-data-eeea2f57b3a82654.yaml new file mode 100644 index 00000000..cd352ac1 --- /dev/null +++ b/releasenotes/notes/add-server-os-collect-config-data-eeea2f57b3a82654.yaml @@ -0,0 +1,6 @@ +--- +features: + - Adds a new output, ServerOsCollectConfigData, which is the + os-collect-config configuration associated with each server resource. + This can be used to [pre]configure the os-collect-config agents on + deployed-server's. -- cgit 1.2.3-korg