From 5cd8051424773957470fa79c9d6bf17adcaad548 Mon Sep 17 00:00:00 2001 From: Yevhen Sukhomud Date: Wed, 29 Jun 2022 21:27:19 +0700 Subject: [PATCH 1/3] 13532 Fixed integration tests destination-mssql Mac OS --- .../mssql/MSSQLDestinationAcceptanceTest.java | 5 +++-- .../mssql/MSSQLDestinationAcceptanceTestSSL.java | 5 +++-- .../mssql/SshMSSQLDestinationAcceptanceTest.java | 10 ++++------ 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTest.java b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTest.java index 0628854149f3..7c5d19cfe872 100644 --- a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTest.java +++ b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTest.java @@ -16,6 +16,7 @@ import io.airbyte.integrations.destination.ExtendedNameTransformer; import io.airbyte.integrations.standardtest.destination.JdbcDestinationAcceptanceTest; import io.airbyte.integrations.standardtest.destination.comparator.TestDataComparator; +import io.airbyte.integrations.util.HostPortResolver; import io.airbyte.test.utils.DatabaseConnectionHelper; import java.sql.SQLException; import java.util.List; @@ -49,8 +50,8 @@ protected boolean supportsNormalization() { private JsonNode getConfig(final MSSQLServerContainer db) { return Jsons.jsonNode(ImmutableMap.builder() - .put("host", db.getHost()) - .put("port", db.getFirstMappedPort()) + .put("host", HostPortResolver.resolveHost(db)) + .put("port", HostPortResolver.resolvePort(db)) .put("username", db.getUsername()) .put("password", db.getPassword()) .put("schema", "test_schema") diff --git a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTestSSL.java b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTestSSL.java index 93a808088ea8..b731ad24d3c6 100644 --- a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTestSSL.java +++ b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/MSSQLDestinationAcceptanceTestSSL.java @@ -16,6 +16,7 @@ import io.airbyte.integrations.base.JavaBaseConstants; import io.airbyte.integrations.destination.ExtendedNameTransformer; import io.airbyte.integrations.standardtest.destination.DestinationAcceptanceTest; +import io.airbyte.integrations.util.HostPortResolver; import io.airbyte.test.utils.DatabaseConnectionHelper; import java.sql.SQLException; import java.util.ArrayList; @@ -54,8 +55,8 @@ protected boolean supportsNormalization() { private JsonNode getConfig(final MSSQLServerContainer db) { return Jsons.jsonNode(ImmutableMap.builder() - .put("host", db.getHost()) - .put("port", db.getFirstMappedPort()) + .put("host", HostPortResolver.resolveHost(db)) + .put("port", HostPortResolver.resolvePort(db)) .put("username", db.getUsername()) .put("password", db.getPassword()) .put("schema", "test_schema") diff --git a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java index d8082c6d4473..490ccff2262f 100644 --- a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java +++ b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java @@ -18,6 +18,7 @@ import io.airbyte.integrations.base.ssh.SshTunnel; import io.airbyte.integrations.destination.ExtendedNameTransformer; import io.airbyte.integrations.standardtest.destination.DestinationAcceptanceTest; +import io.airbyte.integrations.util.HostPortResolver; import java.util.ArrayList; import java.util.List; import java.util.Objects; @@ -110,13 +111,10 @@ protected List resolveIdentifier(final String identifier) { public ImmutableMap.Builder getMSSQLDbConfigBuilder(final JdbcDatabaseContainer db) { return ImmutableMap.builder() - .put("host", Objects.requireNonNull(db.getContainerInfo().getNetworkSettings() - .getNetworks() - .get(((Network.NetworkImpl) network).getName()) - .getIpAddress())) + .put("host", HostPortResolver.resolveHost(db)) + .put("port", HostPortResolver.resolvePort(db)) .put("username", db.getUsername()) .put("password", db.getPassword()) - .put("port", db.getExposedPorts().get(0)) .put("database", database) .put("schema", schemaName) .put("ssl", false); @@ -179,7 +177,7 @@ private void startTestContainers() { } private void initAndStartJdbcContainer() { - db = new MSSQLServerContainer<>("mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04") + db = new MSSQLServerContainer<>("mcr.microsoft.com/mssql/server:2019-CU16-ubuntu-20.04") .withNetwork(network) .acceptLicense(); db.start(); From c1cea07d5fa13cfe0cfc45b228a0f9fd64b55f00 Mon Sep 17 00:00:00 2001 From: Yevhen Sukhomud Date: Wed, 29 Jun 2022 21:45:29 +0700 Subject: [PATCH 2/3] 13523 Clean up --- .../destination/mssql/SshMSSQLDestinationAcceptanceTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java index 490ccff2262f..616f92cc5d6e 100644 --- a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java +++ b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java @@ -21,7 +21,6 @@ import io.airbyte.integrations.util.HostPortResolver; import java.util.ArrayList; import java.util.List; -import java.util.Objects; import java.util.stream.Collectors; import org.apache.commons.lang3.RandomStringUtils; import org.jooq.DSLContext; From 2eb6788dab53705c8641214c4e7f6c34a56de775 Mon Sep 17 00:00:00 2001 From: Yevhen Sukhomud Date: Thu, 30 Jun 2022 18:24:26 +0700 Subject: [PATCH 3/3] 13523 Modified db configuration --- .../mssql/SshMSSQLDestinationAcceptanceTest.java | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java index 616f92cc5d6e..7438dd5f055e 100644 --- a/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java +++ b/airbyte-integrations/connectors/destination-mssql/src/test-integration/java/io/airbyte/integrations/destination/mssql/SshMSSQLDestinationAcceptanceTest.java @@ -6,7 +6,6 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.node.ObjectNode; -import com.google.common.collect.ImmutableMap; import io.airbyte.commons.functional.CheckedFunction; import io.airbyte.commons.json.Jsons; import io.airbyte.db.Database; @@ -18,13 +17,11 @@ import io.airbyte.integrations.base.ssh.SshTunnel; import io.airbyte.integrations.destination.ExtendedNameTransformer; import io.airbyte.integrations.standardtest.destination.DestinationAcceptanceTest; -import io.airbyte.integrations.util.HostPortResolver; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; import org.apache.commons.lang3.RandomStringUtils; import org.jooq.DSLContext; -import org.testcontainers.containers.JdbcDatabaseContainer; import org.testcontainers.containers.MSSQLServerContainer; import org.testcontainers.containers.Network; @@ -51,7 +48,7 @@ protected String getImageName() { @Override protected JsonNode getConfig() throws Exception { - return bastion.getTunnelConfig(getTunnelMethod(), getMSSQLDbConfigBuilder(db)); + return bastion.getTunnelConfig(getTunnelMethod(), bastion.getBasicDbConfigBuider(db, database).put("schema", schemaName)); } @Override @@ -108,17 +105,6 @@ protected List resolveIdentifier(final String identifier) { return result; } - public ImmutableMap.Builder getMSSQLDbConfigBuilder(final JdbcDatabaseContainer db) { - return ImmutableMap.builder() - .put("host", HostPortResolver.resolveHost(db)) - .put("port", HostPortResolver.resolvePort(db)) - .put("username", db.getUsername()) - .put("password", db.getPassword()) - .put("database", database) - .put("schema", schemaName) - .put("ssl", false); - } - private static Database getDatabaseFromConfig(final JsonNode config) { final DSLContext dslContext = DSLContextFactory.create( config.get("username").asText(),