From 8fd7087042641d3a41a8242fa4bb052390ea2c28 Mon Sep 17 00:00:00 2001 From: Sebastian Wagner Date: Wed, 18 Mar 2020 11:25:50 +0100 Subject: [PATCH] python-common: validate ServiceSpec.service_type Signed-off-by: Sebastian Wagner --- src/pybind/mgr/cephadm/tests/test_cephadm.py | 4 ++-- src/python-common/ceph/deployment/service_spec.py | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/pybind/mgr/cephadm/tests/test_cephadm.py b/src/pybind/mgr/cephadm/tests/test_cephadm.py index c32d8f1cee2..b5f8219e417 100644 --- a/src/pybind/mgr/cephadm/tests/test_cephadm.py +++ b/src/pybind/mgr/cephadm/tests/test_cephadm.py @@ -356,7 +356,7 @@ class TestCephadm(object): def test_apply_node_exporter_save(self, _save_spec, cephadm_module): with self._with_host(cephadm_module, 'test'): ps = PlacementSpec(hosts=['test'], count=1) - spec = ServiceSpec('node_exporter', placement=ps) + spec = ServiceSpec('node-exporter', placement=ps) c = cephadm_module.apply_node_exporter(spec) - assert wait(cephadm_module, c) == 'Scheduled node_exporter update...' + assert wait(cephadm_module, c) == 'Scheduled node-exporter update...' _save_spec.assert_called_with(spec) diff --git a/src/python-common/ceph/deployment/service_spec.py b/src/python-common/ceph/deployment/service_spec.py index ae19d739fd2..5643d1032d0 100644 --- a/src/python-common/ceph/deployment/service_spec.py +++ b/src/python-common/ceph/deployment/service_spec.py @@ -302,6 +302,8 @@ class ServiceSpec(object): start the services. """ + KNOWN_SERVICE_TYPES = 'alertmanager crash grafana mds mgr mon nfs ' \ + 'node-exporter osd prometheus rbd-mirror rgw'.split() def __init__(self, service_type, # type: str @@ -312,7 +314,7 @@ class ServiceSpec(object): ): self.placement = PlacementSpec() if placement is None else placement # type: PlacementSpec - assert service_type + assert service_type in ServiceSpec.KNOWN_SERVICE_TYPES, service_type self.service_type = service_type self.service_id = service_id self.unmanaged = unmanaged -- 2.47.3