From 5a89eae68c1b4004832a6c2dfe3f1f54fd72c3a1 Mon Sep 17 00:00:00 2001 From: Nizamudeen A Date: Mon, 27 May 2024 10:05:21 +0530 Subject: [PATCH] mgr/dashboard: fall back to server_cert if root_ca is not found Signed-off-by: Nizamudeen A (cherry picked from commit 0a393ca9bde714524da369caaef1c097472f791c) --- src/pybind/mgr/dashboard/services/nvmeof_conf.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/pybind/mgr/dashboard/services/nvmeof_conf.py b/src/pybind/mgr/dashboard/services/nvmeof_conf.py index 5777d33750f14..3879e308db471 100644 --- a/src/pybind/mgr/dashboard/services/nvmeof_conf.py +++ b/src/pybind/mgr/dashboard/services/nvmeof_conf.py @@ -87,8 +87,17 @@ class NvmeofGatewaysConfig(object): @classmethod def get_root_ca_cert(cls, service_name: str): - root_ca_cert = cls.from_cert_store('nvmeof_root_ca_cert', service_name) - return root_ca_cert.encode() if root_ca_cert else None + try: + root_ca_cert = cls.from_cert_store('nvmeof_root_ca_cert', service_name) + return root_ca_cert.encode() + except DashboardException: + # If root_ca_cert is not set, use server_cert as root_ca_cert + return cls.get_server_cert(service_name) + + @classmethod + def get_server_cert(cls, service_name: str): + server_cert = cls.from_cert_store('nvmeof_server_cert', service_name) + return server_cert.encode() if server_cert else None @classmethod def from_cert_store(cls, entity: str, service_name: str, key=False): -- 2.39.5