From 54be84d6797d5ddd9ed1d2965f9377883cc62bb6 Mon Sep 17 00:00:00 2001 From: Adam King Date: Tue, 28 Feb 2023 10:45:03 -0500 Subject: [PATCH] mgr/cephadm: mock get_fqdn in secure alertmanager config test Before it was expecting "::1" when passed to get_fqdn to resolve to "localhost" but in some environments it would instead resolve to "localhost.localdomain" and the test would fail. This test isn't testing the functionality of get_fqdn, so let's just mock it so the test passes regardless of how get_fqdn resolves "::1" Signed-off-by: Adam King --- src/pybind/mgr/cephadm/tests/test_services.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/pybind/mgr/cephadm/tests/test_services.py b/src/pybind/mgr/cephadm/tests/test_services.py index f96f45736e184..8e37836c77b0b 100644 --- a/src/pybind/mgr/cephadm/tests/test_services.py +++ b/src/pybind/mgr/cephadm/tests/test_services.py @@ -397,11 +397,15 @@ class TestMonitoring: ) @patch("cephadm.serve.CephadmServe._run_cephadm") + @patch("socket.getfqdn") @patch("cephadm.module.CephadmOrchestrator.get_mgr_ip", lambda _: '::1') @patch("cephadm.services.monitoring.password_hash", lambda password: 'fake_password') - def test_alertmanager_config_security_enabled(self, _run_cephadm, cephadm_module: CephadmOrchestrator): + def test_alertmanager_config_security_enabled(self, _get_fqdn, _run_cephadm, cephadm_module: CephadmOrchestrator): _run_cephadm.side_effect = async_side_effect(('{}', '', 0)) + fqdn = 'host1.test' + _get_fqdn.return_value = fqdn + def gen_cert(host, addr): return ('mycert', 'mykey') @@ -416,7 +420,7 @@ class TestMonitoring: cephadm_module.http_server.service_discovery.ssl_certs.get_root_cert = MagicMock(side_effect=get_root_cert) with with_service(cephadm_module, AlertManagerSpec()): - y = dedent(""" + y = dedent(f""" # This file is generated by cephadm. # See https://prometheus.io/docs/alerting/configuration/ for documentation. @@ -440,7 +444,7 @@ class TestMonitoring: webhook_configs: - name: 'ceph-dashboard' webhook_configs: - - url: 'http://localhost:8080/api/prometheus_receiver' + - url: 'http://{fqdn}:8080/api/prometheus_receiver' """).lstrip() web_config = dedent(""" -- 2.47.3