diff --git a/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/main/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImpl.java b/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/main/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImpl.java index 03ec14907d..ea1490dd07 100644 --- a/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/main/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImpl.java +++ b/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/main/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImpl.java @@ -3,6 +3,7 @@ import ai.chat2db.community.domain.api.model.PageResponse; import ai.chat2db.community.domain.api.model.datasource.ManagedDataSourceReconcileResult; import ai.chat2db.community.domain.api.model.datasource.ManagedDataSourceSpec; +import ai.chat2db.community.domain.api.model.datasource.SSHInfo; import ai.chat2db.community.domain.api.model.request.datasource.DbDataSourcePageQueryRequest; import ai.chat2db.community.domain.api.model.request.datasource.DbDataSourcePreConnectRequest; import ai.chat2db.community.domain.api.model.storage.WorkspaceDataSource; @@ -131,6 +132,7 @@ private DbDataSourcePreConnectRequest preConnect(WorkspaceDataSource dataSource) request.setAuthenticationType(dataSource.getAuthenticationType()); request.setHost(dataSource.getHost()); request.setPort(dataSource.getPort()); + request.setSsh(new SSHInfo()); return request; } diff --git a/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/test/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImplTest.java b/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/test/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImplTest.java index 0b03b9a0b5..69dba0b5a1 100644 --- a/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/test/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImplTest.java +++ b/chat2db-community-server/chat2db-community-domain/chat2db-community-domain-core/src/test/java/ai/chat2db/community/domain/core/impl/db/ManagedDataSourceReconcilerImplTest.java @@ -5,6 +5,7 @@ import ai.chat2db.community.domain.api.model.datasource.ManagedDataSourceReconcileResult; import ai.chat2db.community.domain.api.model.datasource.ManagedDataSourceSpec; import ai.chat2db.community.domain.api.model.storage.WorkspaceDataSource; +import ai.chat2db.community.domain.api.model.request.datasource.DbDataSourcePreConnectRequest; import ai.chat2db.community.domain.api.service.db.IDbWorkspaceDataSourceService; import ai.chat2db.community.domain.api.service.storage.IWorkspaceStorageFacade; import org.junit.jupiter.api.BeforeEach; @@ -23,6 +24,7 @@ class ManagedDataSourceReconcilerImplTest { private final List stored = new ArrayList<>(); private final List calls = new ArrayList<>(); private WorkspaceDataSource updateRequest; + private DbDataSourcePreConnectRequest preConnectRequest; private boolean failPreConnect; private ManagedDataSourceReconcilerImpl reconciler; @@ -31,6 +33,7 @@ void setUp() { stored.clear(); calls.clear(); updateRequest = null; + preConnectRequest = null; failPreConnect = false; reconciler = new ManagedDataSourceReconcilerImpl(storageFacade(), workspaceService()); } @@ -42,6 +45,7 @@ void createsManagedDatasourceAfterConnectionTest() { assertEquals(ManagedDataSourceReconcileResult.Action.CREATED, result.getAction()); assertEquals(101L, result.getDataSourceId()); assertEquals(List.of("preConnect", "create"), calls); + assertEquals(false, preConnectRequest.getSsh().isUse()); assertEquals(ManagedDataSourceReconcilerImpl.MANAGED_BY, stored.get(0).getManagedBy()); assertEquals("prod-readonly", stored.get(0).getManagedKey()); } @@ -151,6 +155,7 @@ private IDbWorkspaceDataSourceService workspaceService() { yield stored.stream().filter(item -> item.getId().equals(args[0])).findFirst().orElse(null); } case "preConnect" -> { + preConnectRequest = (DbDataSourcePreConnectRequest) args[0]; calls.add("preConnect"); if (failPreConnect) { throw new IllegalStateException("connection failed");