Browse Source

Use random port in registry IT (#16014)

3.2.2-release-bak
Wenjun Ruan 6 months ago committed by GitHub
parent
commit
4e73fc28b0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 11
      dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/test/java/org/apache/dolphinscheduler/plugin/registry/jdbc/MysqlJdbcRegistryTestCase.java
  2. 11
      dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/test/java/org/apache/dolphinscheduler/plugin/registry/jdbc/PostgresqlJdbcRegistryTestCase.java
  3. 8
      dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-zookeeper/src/test/java/org/apache/dolphinscheduler/plugin/registry/zookeeper/ZookeeperRegistryTestCase.java

11
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/test/java/org/apache/dolphinscheduler/plugin/registry/jdbc/MysqlJdbcRegistryTestCase.java

@ -17,6 +17,8 @@
package org.apache.dolphinscheduler.plugin.registry.jdbc; package org.apache.dolphinscheduler.plugin.registry.jdbc;
import org.apache.commons.lang3.RandomUtils;
import java.sql.Connection; import java.sql.Connection;
import java.sql.DriverManager; import java.sql.DriverManager;
import java.sql.Statement; import java.sql.Statement;
@ -52,12 +54,15 @@ class MysqlJdbcRegistryTestCase extends JdbcRegistryTestCase {
.withExposedPorts(3306) .withExposedPorts(3306)
.waitingFor(Wait.forHealthcheck()); .waitingFor(Wait.forHealthcheck());
mysqlContainer.setPortBindings(Lists.newArrayList("3306:3306")); int exposedPort = RandomUtils.nextInt(10000, 65535);
mysqlContainer.setPortBindings(Lists.newArrayList(exposedPort + ":3306"));
Startables.deepStart(Stream.of(mysqlContainer)).join(); Startables.deepStart(Stream.of(mysqlContainer)).join();
String jdbcUrl = "jdbc:mysql://localhost:" + exposedPort + "/dolphinscheduler?useSSL=false&serverTimezone=UTC";
System.setProperty("spring.datasource.url", jdbcUrl);
try ( try (
Connection connection = DriverManager.getConnection( Connection connection = DriverManager.getConnection(jdbcUrl, "root", "root");
"jdbc:mysql://localhost:3306/dolphinscheduler?useSSL=false&serverTimezone=UTC", "root", "root");
Statement statement = connection.createStatement();) { Statement statement = connection.createStatement();) {
statement.execute( statement.execute(
"CREATE TABLE `t_ds_jdbc_registry_data`\n" + "CREATE TABLE `t_ds_jdbc_registry_data`\n" +

11
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/test/java/org/apache/dolphinscheduler/plugin/registry/jdbc/PostgresqlJdbcRegistryTestCase.java

@ -17,6 +17,8 @@
package org.apache.dolphinscheduler.plugin.registry.jdbc; package org.apache.dolphinscheduler.plugin.registry.jdbc;
import org.apache.commons.lang3.RandomUtils;
import java.sql.Connection; import java.sql.Connection;
import java.sql.DriverManager; import java.sql.DriverManager;
import java.sql.Statement; import java.sql.Statement;
@ -53,12 +55,15 @@ public class PostgresqlJdbcRegistryTestCase extends JdbcRegistryTestCase {
.withDatabaseName("dolphinscheduler") .withDatabaseName("dolphinscheduler")
.withNetwork(Network.newNetwork()) .withNetwork(Network.newNetwork())
.withExposedPorts(5432); .withExposedPorts(5432);
postgresqlContainer.setPortBindings(Lists.newArrayList("5432:5432")); int exposedPort = RandomUtils.nextInt(10000, 65535);
postgresqlContainer.setPortBindings(Lists.newArrayList(exposedPort + ":5432"));
Startables.deepStart(Stream.of(postgresqlContainer)).join(); Startables.deepStart(Stream.of(postgresqlContainer)).join();
String jdbcUrl = "jdbc:postgresql://localhost:" + exposedPort + "/dolphinscheduler";
System.setProperty("spring.datasource.url", jdbcUrl);
try ( try (
Connection connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/dolphinscheduler", Connection connection = DriverManager.getConnection(jdbcUrl, "root", "root");
"root", "root");
Statement statement = connection.createStatement();) { Statement statement = connection.createStatement();) {
statement.execute( statement.execute(
"create table t_ds_jdbc_registry_data\n" + "create table t_ds_jdbc_registry_data\n" +

8
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-zookeeper/src/test/java/org/apache/dolphinscheduler/plugin/registry/zookeeper/ZookeeperRegistryTestCase.java

@ -19,6 +19,8 @@ package org.apache.dolphinscheduler.plugin.registry.zookeeper;
import org.apache.dolphinscheduler.plugin.registry.RegistryTestCase; import org.apache.dolphinscheduler.plugin.registry.RegistryTestCase;
import org.apache.commons.lang3.RandomUtils;
import java.util.stream.Stream; import java.util.stream.Stream;
import lombok.SneakyThrows; import lombok.SneakyThrows;
@ -51,10 +53,10 @@ class ZookeeperRegistryTestCase extends RegistryTestCase<ZookeeperRegistry> {
public static void setUpTestingServer() { public static void setUpTestingServer() {
zookeeperContainer = new GenericContainer<>(DockerImageName.parse("zookeeper:3.8")) zookeeperContainer = new GenericContainer<>(DockerImageName.parse("zookeeper:3.8"))
.withNetwork(NETWORK); .withNetwork(NETWORK);
int randomPort = RandomUtils.nextInt(10000, 65535);
zookeeperContainer.setPortBindings(Lists.newArrayList("2181:2181")); zookeeperContainer.setPortBindings(Lists.newArrayList(randomPort + ":2181"));
Startables.deepStart(Stream.of(zookeeperContainer)).join(); Startables.deepStart(Stream.of(zookeeperContainer)).join();
System.setProperty("registry.zookeeper.connect-string", "localhost:2181"); System.setProperty("registry.zookeeper.connect-string", "localhost:" + randomPort);
} }
@SneakyThrows @SneakyThrows

Loading…
Cancel
Save