From: Sebastian Wagner Date: Fri, 23 Jul 2021 00:59:59 +0000 (+0200) Subject: python-common: prettify `yaml.dump(MonitoringSpec())` X-Git-Tag: v17.1.0~356^2~5 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=f76c02a658ed1de54a380381932bb58b6ab91d41;p=ceph.git python-common: prettify `yaml.dump(MonitoringSpec())` Signed-off-by: Sebastian Wagner --- diff --git a/src/python-common/ceph/deployment/service_spec.py b/src/python-common/ceph/deployment/service_spec.py index 21c16026500a1..bcf1fdee3ea38 100644 --- a/src/python-common/ceph/deployment/service_spec.py +++ b/src/python-common/ceph/deployment/service_spec.py @@ -618,7 +618,8 @@ class ServiceSpec(object): if self.service_id: ret['service_id'] = self.service_id ret['service_name'] = self.service_name() - ret['placement'] = self.placement.to_json() + if self.placement.to_json(): + ret['placement'] = self.placement.to_json() if self.unmanaged: ret['unmanaged'] = self.unmanaged if self.networks: @@ -1095,3 +1096,6 @@ class MonitoringSpec(ServiceSpec): return {'prometheus': 9095, 'node-exporter': 9100, 'grafana': 3000}[self.service_type] + + +yaml.add_representer(MonitoringSpec, ServiceSpec.yaml_representer) diff --git a/src/python-common/ceph/tests/test_service_spec.py b/src/python-common/ceph/tests/test_service_spec.py index e8620b017339f..9cb85bb24cb9b 100644 --- a/src/python-common/ceph/tests/test_service_spec.py +++ b/src/python-common/ceph/tests/test_service_spec.py @@ -234,6 +234,19 @@ spec: objectstore: bluestore wal_devices: model: NVME-QQQQ-987 +--- +service_type: alertmanager +service_name: alertmanager +spec: + port: 1234 + user_data: + default_webhook_urls: + - foo +--- +service_type: grafana +service_name: grafana +spec: + port: 1234 """ for y in y.split('---\n'):