This is an automated email from the ASF dual-hosted git repository.

yasith pushed a commit to branch feat/single-jvm
in repository https://gitbox.apache.org/repos/asf/airavata.git


The following commit(s) were added to refs/heads/feat/single-jvm by this push:
     new 70fcc1bc64 fix: audit issues — DB init, SDK validation, test/deploy 
properties
70fcc1bc64 is described below

commit 70fcc1bc64cc548183416158178bf99da05cfc78
Author: yasithdev <[email protected]>
AuthorDate: Thu Mar 26 00:44:31 2026 -0500

    fix: audit issues — DB init, SDK validation, test/deploy properties
    
    - Add missing WorkflowCatalog and CredentialStore DB init configs
    - Fix Python SDK _validate_transport for services without getAPIVersion
    - Unify test and deployment airavata-server.properties to airavata.jdbc.*
    
    Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
---
 .../airavata/api/server/AiravataUnifiedServer.java |  4 +++
 .../src/test/resources/airavata-server.properties  | 41 ++++-----------------
 .../airavata_sdk/transport/utils.py                |  7 ++--
 .../deployment-scripts/airavata-server.properties  | 42 ++++------------------
 4 files changed, 22 insertions(+), 72 deletions(-)

diff --git 
a/airavata-api/src/main/java/org/apache/airavata/api/server/AiravataUnifiedServer.java
 
b/airavata-api/src/main/java/org/apache/airavata/api/server/AiravataUnifiedServer.java
index 23d32beaf6..e4d8eea2b8 100644
--- 
a/airavata-api/src/main/java/org/apache/airavata/api/server/AiravataUnifiedServer.java
+++ 
b/airavata-api/src/main/java/org/apache/airavata/api/server/AiravataUnifiedServer.java
@@ -36,9 +36,11 @@ import org.apache.airavata.model.error.AiravataErrorType;
 import org.apache.airavata.model.error.AiravataSystemException;
 import org.apache.airavata.registry.api.RegistryService;
 import org.apache.airavata.registry.api.service.handler.RegistryServerHandler;
+import 
org.apache.airavata.credential.store.store.impl.util.CredentialStoreDBInitConfig;
 import org.apache.airavata.registry.core.utils.AppCatalogDBInitConfig;
 import org.apache.airavata.registry.core.utils.ExpCatalogDBInitConfig;
 import org.apache.airavata.registry.core.utils.ReplicaCatalogDBInitConfig;
+import org.apache.airavata.registry.core.utils.WorkflowCatalogDBInitConfig;
 import 
org.apache.airavata.service.profile.groupmanager.cpi.GroupManagerService;
 import 
org.apache.airavata.service.profile.groupmanager.cpi.group_manager_cpiConstants;
 import org.apache.airavata.service.profile.handlers.GroupManagerServiceHandler;
@@ -91,6 +93,8 @@ public class AiravataUnifiedServer implements IServer {
             new ExpCatalogDBInitConfig(),
             new AppCatalogDBInitConfig(),
             new ReplicaCatalogDBInitConfig(),
+            new WorkflowCatalogDBInitConfig(),
+            new CredentialStoreDBInitConfig(),
             new UserProfileCatalogDBInitConfig());
 
     public AiravataUnifiedServer() {
diff --git a/airavata-api/src/test/resources/airavata-server.properties 
b/airavata-api/src/test/resources/airavata-server.properties
index 58370dc1b8..0c00542576 100644
--- a/airavata-api/src/test/resources/airavata-server.properties
+++ b/airavata-api/src/test/resources/airavata-server.properties
@@ -25,45 +25,18 @@
 ###########################################################################
 
 ###########################################################################
-#  API Server Registry Configuration
+#  Unified Database Configuration
 ###########################################################################
 
-#for derby [AiravataJPARegistry] - all catalogs use single database
-registry.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-registry.jdbc.url=jdbc:derby:airavata;create=true;user=airavata;password=airavata
-registry.jdbc.user=airavata
-registry.jdbc.password=airavata
-validationQuery=SELECT 1 from CONFIGURATION
+# Unified JDBC configuration for all catalogs
+airavata.jdbc.driver=org.mariadb.jdbc.Driver
+airavata.jdbc.url=jdbc:mariadb://localhost:3306/airavata
+airavata.jdbc.user=airavata
+airavata.jdbc.password=airavata
+airavata.jdbc.validationQuery=SELECT 1
 
 # Properties for default user mode
 default.registry.user=admin
 default.registry.gateway=php_reference_gateway
 default.registry.oauth.client.id=client_id
 default.registry.oauth.client.secret=client_secret
-
-###########################################################################
-#  Application Catalog DB Configuration
-###########################################################################
-appcatalog.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-appcatalog.jdbc.url=jdbc:derby:airavata;create=true;user=airavata;password=airavata
-appcatalog.jdbc.user=airavata
-appcatalog.jdbc.password=airavata
-appcatalog.validationQuery=SELECT 1 from CONFIGURATION
-
-##########################################################################
-#  Replica Catalog DB Configuration
-###########################################################################
-replicacatalog.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-replicacatalog.jdbc.url=jdbc:derby:airavata;create=true;user=airavata;password=airavata
-replicacatalog.jdbc.user=airavata
-replicacatalog.jdbc.password=airavata
-replicacatalog.validationQuery=SELECT 1 from CONFIGURATION
-
-###########################################################################
-#  Workflow Catalog DB Configuration
-###########################################################################
-workflowcatalog.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-workflowcatalog.jdbc.url=jdbc:derby:airavata;create=true;user=airavata;password=airavata
-workflowcatalog.jdbc.user=airavata
-workflowcatalog.jdbc.password=airavata
-workflowcatalog.validationQuery=SELECT 1 from CONFIGURATION
diff --git a/dev-tools/airavata-python-sdk/airavata_sdk/transport/utils.py 
b/dev-tools/airavata-python-sdk/airavata_sdk/transport/utils.py
index b53e216eb1..10e9c8b27b 100644
--- a/dev-tools/airavata-python-sdk/airavata_sdk/transport/utils.py
+++ b/dev-tools/airavata-python-sdk/airavata_sdk/transport/utils.py
@@ -105,8 +105,11 @@ class ThriftClient:
         if self.transport.isOpen():
           self.transport.close()
         self.transport.open()
-        version = self.client.getAPIVersion() # type: ignore
-        log.debug(f"[AV] Connected to {self.host}:{self.port} passed! API 
version={version}")
+        try:
+          version = self.client.getAPIVersion() # type: ignore
+          log.debug(f"[AV] Connected to {self.host}:{self.port}, API 
version={version}")
+        except AttributeError:
+          log.debug(f"[AV] Connected to {self.host}:{self.port} (service has 
no getAPIVersion)")
         break
       except Exception as e:
         log.debug(f"[AV] Connection attempt {attempt + 1} failed: {repr(e)}")
diff --git a/dev-tools/deployment-scripts/airavata-server.properties 
b/dev-tools/deployment-scripts/airavata-server.properties
index 1ea44cdedd..7b1370d4a8 100644
--- a/dev-tools/deployment-scripts/airavata-server.properties
+++ b/dev-tools/deployment-scripts/airavata-server.properties
@@ -23,43 +23,13 @@
 ############################
 
 ############################
-# Database (MariaDB) - single unified database
+# Unified Database Configuration
 ############################
-registry.jdbc.driver=org.mariadb.jdbc.Driver
-registry.jdbc.url=jdbc:mariadb://mysql:3306/airavata
-registry.jdbc.user=airavata
-registry.jdbc.password=123456
-registry.jdbc.validationQuery=SELECT 1
-
-appcatalog.jdbc.driver=org.mariadb.jdbc.Driver
-appcatalog.jdbc.url=jdbc:mariadb://mysql:3306/airavata
-appcatalog.jdbc.user=airavata
-appcatalog.jdbc.password=123456
-appcatalog.jdbc.validationQuery=SELECT 1
-
-replicacatalog.jdbc.driver=org.mariadb.jdbc.Driver
-replicacatalog.jdbc.url=jdbc:mariadb://mysql:3306/airavata
-replicacatalog.jdbc.user=airavata
-replicacatalog.jdbc.password=123456
-replicacatalog.jdbc.validationQuery=SELECT 1
-
-workflowcatalog.jdbc.driver=org.mariadb.jdbc.Driver
-workflowcatalog.jdbc.url=jdbc:mariadb://mysql:3306/airavata
-workflowcatalog.jdbc.user=airavata
-workflowcatalog.jdbc.password=123456
-workflowcatalog.jdbc.validationQuery=SELECT 1
-
-sharingcatalog.jdbc.driver=org.mariadb.jdbc.Driver
-sharingcatalog.jdbc.url=jdbc:mariadb://mysql:3306/airavata
-sharingcatalog.jdbc.user=airavata
-sharingcatalog.jdbc.password=123456
-sharingcatalog.jdbc.validationQuery=SELECT 1
-
-credential.store.jdbc.driver=org.mariadb.jdbc.Driver
-credential.store.jdbc.url=jdbc:mariadb://mysql:3306/airavata
-credential.store.jdbc.user=airavata
-credential.store.jdbc.password=123456
-credential.store.jdbc.validationQuery=SELECT 1
+airavata.jdbc.driver=org.mariadb.jdbc.Driver
+airavata.jdbc.url=jdbc:mariadb://mysql:3306/airavata
+airavata.jdbc.user=airavata
+airavata.jdbc.password=123456
+airavata.jdbc.validationQuery=SELECT 1
 
 ############################
 # AMQP (RabbitMQ) Configuration

Reply via email to