@@ -441,6 +441,19 @@ def getElasticDBParameters(fullname):
441
441
:return: S_OK(dict)/S_ERROR()
442
442
"""
443
443
444
+ def _getCACerts (cs_path ):
445
+ result = gConfig .getOption (cs_path + "/ca_certs" )
446
+ if not result ["OK" ]:
447
+ # No CA certificate found, try at the common place
448
+ result = gConfig .getOption ("/Systems/NoSQLDatabases/ca_certs" )
449
+ if not result ["OK" ]:
450
+ return None
451
+ else :
452
+ ca_certs = result ["Value" ]
453
+ else :
454
+ ca_certs = result ["Value" ]
455
+ return ca_certs
456
+
444
457
cs_path = getDatabaseSection (fullname )
445
458
parameters = {}
446
459
@@ -464,17 +477,9 @@ def getElasticDBParameters(fullname):
464
477
parameters ["Password" ] = None
465
478
parameters ["User" ] = None
466
479
467
- # OpenSearch ca_certs
468
- result = gConfig .getOption (cs_path + "/ca_certs" )
469
- if not result ["OK" ]:
470
- # No CA certificate found, try at the common place
471
- result = gConfig .getOption ("/Systems/NoSQLDatabases/ca_certs" )
472
- if not result ["OK" ]:
473
- return S_ERROR ("Failed to get the configuration parameter: ca_certs." )
474
- else :
475
- ca_certs = result ["Value" ]
476
- else :
477
- ca_certs = result ["Value" ]
480
+ ca_certs = _getCACerts (cs_path )
481
+ if ca_certs is None :
482
+ return S_ERROR ("Failed to get the configuration parameter: ca_certs." )
478
483
parameters ["ca_certs" ] = ca_certs
479
484
480
485
# OpenSearch client_key
@@ -522,6 +527,11 @@ def getElasticDBParameters(fullname):
522
527
dbUser = result ["Value" ]
523
528
parameters ["User" ] = dbUser
524
529
530
+ # ca_certs is not mandatory
531
+ ca_certs = _getCACerts (cs_path )
532
+ if ca_certs :
533
+ parameters ["ca_certs" ] = ca_certs
534
+
525
535
# Check optional parameters: Host, Port, SSL
526
536
result = gConfig .getOption (cs_path + "/Host" )
527
537
if not result ["OK" ]:
0 commit comments