From: Adam King Date: Tue, 28 Feb 2023 15:45:03 +0000 (-0500) Subject: mgr/cephadm: mock get_fqdn in secure alertmanager config test X-Git-Tag: v18.1.0~263^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F50308%2Fhead;p=ceph.git 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 --- 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("""