From 691a78ff35ebb13c00cb7a333b39a2ea3281ec41 Mon Sep 17 00:00:00 2001 From: Junchao-Mellanox Date: Mon, 25 Mar 2024 08:54:17 +0200 Subject: [PATCH] Add a function to get container name by asic ID --- src/sonic-py-common/sonic_py_common/multi_asic.py | 13 +++++++++++++ src/sonic-py-common/tests/multi_asic_test.py | 6 ++++++ 2 files changed, 19 insertions(+) create mode 100644 src/sonic-py-common/tests/multi_asic_test.py diff --git a/src/sonic-py-common/sonic_py_common/multi_asic.py b/src/sonic-py-common/sonic_py_common/multi_asic.py index d35c39c44b..91701e7f09 100644 --- a/src/sonic-py-common/sonic_py_common/multi_asic.py +++ b/src/sonic-py-common/sonic_py_common/multi_asic.py @@ -487,3 +487,16 @@ def get_asic_presence_list(): # This is not multi-asic, all asics should be present. asics_list = list(range(0, get_num_asics())) return asics_list + + +def get_container_name_from_asic_id(service_name, asic_id): + """Get the container name for a service according to the ASIC ID + + Args: + service_name (str): feature/service name + asic_id (int): ASIC ID + + Returns: + str: container name of the service in the given ASIC namespace + """ + return '{}{}'.format(service_name, asic_id) diff --git a/src/sonic-py-common/tests/multi_asic_test.py b/src/sonic-py-common/tests/multi_asic_test.py new file mode 100644 index 0000000000..e67c8f03c1 --- /dev/null +++ b/src/sonic-py-common/tests/multi_asic_test.py @@ -0,0 +1,6 @@ +from sonic_py_common import multi_asic + + +class TestMultiAsic: + def test_get_container_name_from_asic_id(self): + assert multi_asic.get_container_name_from_asic_id('database', 0) == 'database0'