diff --git a/.gitignore b/.gitignore index bef7852d858a451aab9bb7c93279901c761db7bf..aa9230d7a2f0ea3062d8aac1004ad5c5c76e975e 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,5 @@ venv .vscode docs/build +errors.log +info.log \ No newline at end of file diff --git a/inventory_provider/routes/poller.py b/inventory_provider/routes/poller.py index 5a4c4ae12c503b2f6b7d8248faeef2511b3c2d60..3855d2c4450bcd1adeac4f2066119e046fc6ddd2 100644 --- a/inventory_provider/routes/poller.py +++ b/inventory_provider/routes/poller.py @@ -118,6 +118,7 @@ class BRIAN_DASHBOARDS(Enum): GWS_UPSTREAMS = auto() LHCONE = auto() CAE1 = auto() + IC1 = auto() COPERNICUS = auto() # NREN customer @@ -480,6 +481,9 @@ def _get_dashboards(interface): if router == 'mx1.lon.uk.geant.net' \ and re.match(r'^ae12(\.\d+|$)$', ifc_name): yield BRIAN_DASHBOARDS.CAE1 + if router == 'rt1.mar.fr.geant.net' \ + and re.match(r'^ae12(\.\d+|$)$', ifc_name): + yield BRIAN_DASHBOARDS.IC1 if re.match(r'PHY UPSTREAM\s', description): yield BRIAN_DASHBOARDS.GWS_PHY_UPSTREAM regex = r'(PHY|LAG|(SRV_(GLOBAL|LHCONE|MDVPN|IAS|CLS|L3VPN))) CUSTOMER\s' diff --git a/test/test_general_poller_routes.py b/test/test_general_poller_routes.py index 03366d6b4f0154d1e591e790560fe98e9ced67c7..a42700acd659488fea874a41680058e951f13d69 100644 --- a/test/test_general_poller_routes.py +++ b/test/test_general_poller_routes.py @@ -315,8 +315,27 @@ def test_interface_dashboard_mapping(description, expected_dashboards): 'description': description } dashboards = poller._get_dashboards(interface) - dashboards = [d.name for d in dashboards] - assert set(list(dashboards)) == set(expected_dashboards) + assert set(d.name for d in dashboards) == set(expected_dashboards) + + +def test__CAE_1_dashboards(): + interface = { + 'router': 'mx1.lon.uk.geant.net', + 'name': 'ae12.123', + 'description': '' + } + dashboards = poller._get_dashboards(interface) + assert set(d.name for d in dashboards) == {"CAE1"} + + +def test_POL1_703_IC1_dashboards(): + interface = { + 'router': 'rt1.mar.fr.geant.net', + 'name': 'ae12.123', + 'description': '' + } + dashboards = poller._get_dashboards(interface) + assert set(d.name for d in dashboards) == {"IC1"} @pytest.mark.parametrize('interface,customers,dashboard_info', [ diff --git a/tox.ini b/tox.ini index e7ea727d3587874f802cde54e8060af65c24a470..e9bfe32945b944a9c5df171e8c8adaa3312c7d1e 100644 --- a/tox.ini +++ b/tox.ini @@ -2,7 +2,6 @@ envlist = py311 [flake8] -exclude = venv,.tox,build max-line-length = 120 [coverage:run] @@ -13,7 +12,7 @@ passenv = TEST_OPSDB_HOSTNAME,TEST_OPSDB_DBNAME,TEST_OPSDB_USERNAME,TEST_OPSDB_P deps = pytest-xdist pytest-cov - flake8 + flake8 inventory_provider test circuit_tree.py -r requirements.txt #install_command = pip install --pre --extra-index-url http://pip.geant.net/ --trusted-host pip.geant.net {opts} {packages}