This is an automated email from the ASF dual-hosted git repository.
wenjun pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new 0e2d0fb81e [Fix-16228] Fix E2E health check url is not correct (#16227)
0e2d0fb81e is described below
commit 0e2d0fb81ecec048dce8d807a9f31f35e526bb92
Author: Wenjun Ruan <[email protected]>
AuthorDate: Thu Jun 27 21:49:21 2024 +0800
[Fix-16228] Fix E2E health check url is not correct (#16227)
---
.../resources/docker/basic/docker-compose.yaml | 3 +--
.../datasource-clickhouse/docker-compose.yaml | 3 +--
.../docker/datasource-hive/docker-compose.yaml | 3 +--
.../docker/datasource-mysql/docker-compose.yaml | 3 +--
.../datasource-postgresql/docker-compose.yaml | 3 +--
.../datasource-sqlserver/docker-compose.yaml | 3 +--
.../docker/file-manage/docker-compose.yaml | 3 +--
.../api/test/core/DolphinSchedulerExtension.java | 23 +++++++++++++---------
.../dao/repository/impl/CommandDaoImplTest.java | 10 ----------
.../resources/docker/basic/docker-compose.yaml | 2 +-
.../datasource-clickhouse/docker-compose.yaml | 2 +-
.../docker/datasource-hive/docker-compose.yaml | 2 +-
.../docker/datasource-mysql/docker-compose.yaml | 2 +-
.../datasource-postgresql/docker-compose.yaml | 4 ++--
.../datasource-sqlserver/docker-compose.yaml | 2 +-
.../docker/file-manage/docker-compose.yaml | 2 +-
.../docker/workflow-http/docker-compose.yaml | 2 +-
17 files changed, 30 insertions(+), 42 deletions(-)
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/basic/docker-compose.yaml
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/basic/docker-compose.yaml
index f1a1cf1fbb..edeca6af11 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/basic/docker-compose.yaml
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/basic/docker-compose.yaml
@@ -21,7 +21,6 @@ services:
dolphinscheduler:
image: apache/dolphinscheduler-standalone-server:ci
environment:
- MASTER_MAX_CPU_LOAD_AVG: 100
WORKER_TENANT_AUTO_CREATE: 'true'
ports:
- "12345:12345"
@@ -29,7 +28,7 @@ services:
network:
ipv4_address: 10.5.0.5
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 60s
retries: 120
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
index fd14568ad9..29e4ba140b 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
@@ -21,14 +21,13 @@ services:
dolphinscheduler:
image: apache/dolphinscheduler-standalone-server:ci
environment:
- MASTER_MAX_CPU_LOAD_AVG: 100
WORKER_TENANT_AUTO_CREATE: 'true'
ports:
- "12345:12345"
networks:
- api-test
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 60s
retries: 120
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
index 7cfe64badd..c8ec0c5792 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
@@ -21,14 +21,13 @@ services:
dolphinscheduler:
image: apache/dolphinscheduler-standalone-server:ci
environment:
- MASTER_MAX_CPU_LOAD_AVG: 100
WORKER_TENANT_AUTO_CREATE: 'true'
ports:
- "12345:12345"
networks:
- api-test
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 60s
retries: 120
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
index d4134ef3f9..054e1bd482 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
@@ -21,7 +21,6 @@ services:
dolphinscheduler:
image: apache/dolphinscheduler-standalone-server:ci
environment:
- MASTER_MAX_CPU_LOAD_AVG: 100
WORKER_TENANT_AUTO_CREATE: 'true'
ports:
- "12345:12345"
@@ -31,7 +30,7 @@ services:
- ./download-mysql.sh:/tmp/download-mysql.sh
entrypoint: [ 'bash', '-c', '/bin/bash /tmp/download-mysql.sh &&
/opt/dolphinscheduler/bin/start.sh && tail -f /dev/null' ]
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 60s
retries: 120
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
index 00f88b4c9a..5281556e85 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
@@ -21,14 +21,13 @@ services:
dolphinscheduler:
image: apache/dolphinscheduler-standalone-server:ci
environment:
- MASTER_MAX_CPU_LOAD_AVG: 100
WORKER_TENANT_AUTO_CREATE: 'true'
ports:
- "12345:12345"
networks:
- api-test
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 60s
retries: 120
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
index e8dde399b9..656f6a3ecc 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
@@ -21,14 +21,13 @@ services:
dolphinscheduler:
image: apache/dolphinscheduler-standalone-server:ci
environment:
- MASTER_MAX_CPU_LOAD_AVG: 100
WORKER_TENANT_AUTO_CREATE: 'true'
ports:
- "12345:12345"
networks:
- api-test
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 60s
retries: 120
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/file-manage/docker-compose.yaml
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/file-manage/docker-compose.yaml
index 0ac4886ad8..8dca2fbf03 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/file-manage/docker-compose.yaml
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-case/src/test/resources/docker/file-manage/docker-compose.yaml
@@ -21,14 +21,13 @@ services:
dolphinscheduler:
image: apache/dolphinscheduler-standalone-server:ci
environment:
- MASTER_MAX_CPU_LOAD_AVG: 100
WORKER_TENANT_AUTO_CREATE: 'true'
ports:
- "12345:12345"
networks:
- api-test
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 60s
retries: 120
diff --git
a/dolphinscheduler-api-test/dolphinscheduler-api-test-core/src/main/java/org/apache/dolphinscheduler/api/test/core/DolphinSchedulerExtension.java
b/dolphinscheduler-api-test/dolphinscheduler-api-test-core/src/main/java/org/apache/dolphinscheduler/api/test/core/DolphinSchedulerExtension.java
index 87771cc010..c91ecf99bf 100644
---
a/dolphinscheduler-api-test/dolphinscheduler-api-test-core/src/main/java/org/apache/dolphinscheduler/api/test/core/DolphinSchedulerExtension.java
+++
b/dolphinscheduler-api-test/dolphinscheduler-api-test-core/src/main/java/org/apache/dolphinscheduler/api/test/core/DolphinSchedulerExtension.java
@@ -24,6 +24,7 @@ import java.net.URL;
import java.time.Duration;
import java.util.List;
import java.util.Objects;
+import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -31,6 +32,7 @@ import org.junit.jupiter.api.extension.AfterAllCallback;
import org.junit.jupiter.api.extension.BeforeAllCallback;
import org.junit.jupiter.api.extension.ExtensionContext;
import org.slf4j.Logger;
+import org.testcontainers.containers.ContainerState;
import org.testcontainers.containers.DockerComposeContainer;
import org.testcontainers.containers.wait.strategy.Wait;
@@ -49,6 +51,9 @@ final class DolphinSchedulerExtension implements
BeforeAllCallback, AfterAllCall
if (!localMode) {
compose = createDockerCompose(context);
compose.start();
+ compose.getContainerByServiceName(serviceName)
+ .map(ContainerState::isHealthy)
+ .orElseThrow(() -> new
IllegalStateException("DolphinScheduler service is not healthy"));
}
}
@@ -63,17 +68,17 @@ final class DolphinSchedulerExtension implements
BeforeAllCallback, AfterAllCall
final Class<?> clazz = context.getRequiredTestClass();
final DolphinScheduler annotation =
clazz.getAnnotation(DolphinScheduler.class);
final List<File> files = Stream.of(annotation.composeFiles())
- .map(it -> DolphinScheduler.class.getClassLoader().getResource(it))
- .filter(Objects::nonNull)
- .map(URL::getPath)
- .map(File::new)
- .collect(Collectors.toList());
+ .map(it ->
DolphinScheduler.class.getClassLoader().getResource(it))
+ .filter(Objects::nonNull)
+ .map(URL::getPath)
+ .map(File::new)
+ .collect(Collectors.toList());
compose = new DockerComposeContainer<>(files)
- .withPull(true)
- .withTailChildContainers(true)
- .withLogConsumer(serviceName, outputFrame ->
log.info(outputFrame.getUtf8String()))
- .waitingFor(serviceName,
Wait.forHealthcheck().withStartupTimeout(Duration.ofSeconds(Constants.DOCKER_COMPOSE_DEFAULT_TIMEOUT)));
+ .withPull(true)
+ .withTailChildContainers(true)
+ .withLogConsumer(serviceName, outputFrame ->
log.info(outputFrame.getUtf8String()))
+ .waitingFor(serviceName,
Wait.forHealthcheck().withStartupTimeout(Duration.ofSeconds(Constants.DOCKER_COMPOSE_DEFAULT_TIMEOUT)));
return compose;
}
diff --git
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/repository/impl/CommandDaoImplTest.java
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/repository/impl/CommandDaoImplTest.java
index df5a2562aa..9185a96551 100644
---
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/repository/impl/CommandDaoImplTest.java
+++
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/repository/impl/CommandDaoImplTest.java
@@ -18,7 +18,6 @@
package org.apache.dolphinscheduler.dao.repository.impl;
import static com.google.common.truth.Truth.assertThat;
-import static org.junit.jupiter.api.Assertions.assertFalse;
import org.apache.dolphinscheduler.common.enums.CommandType;
import org.apache.dolphinscheduler.common.enums.FailureStrategy;
@@ -34,7 +33,6 @@ import org.apache.dolphinscheduler.dao.utils.WorkerGroupUtils;
import org.apache.commons.lang3.RandomUtils;
import java.util.List;
-import java.util.stream.Collectors;
import org.junit.jupiter.api.RepeatedTest;
import org.springframework.beans.factory.annotation.Autowired;
@@ -63,14 +61,6 @@ class CommandDaoImplTest extends BaseDaoTest {
}
List<Command> commands =
commandDao.queryCommandByIdSlot(currentSlotIndex, totalSlot, idStep, fetchSize);
- assertFalse(commands.isEmpty(),
- "Commands should not be empty, currentSlotIndex: " +
currentSlotIndex +
- ", totalSlot: " + totalSlot +
- ", idStep: " + idStep +
- ", fetchSize: " + fetchSize +
- ", total command size: " + commandSize +
- ", total commands: "
- +
commandDao.queryAll().stream().map(Command::getId).collect(Collectors.toList()));
assertThat(commands.size())
.isEqualTo(commandDao.queryAll()
.stream()
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/basic/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/basic/docker-compose.yaml
index 89d645c2c1..37bebedc64 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/basic/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/basic/docker-compose.yaml
@@ -28,7 +28,7 @@ services:
networks:
- e2e
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 5s
retries: 120
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
index 3b9ccc0f93..ec108f067e 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-clickhouse/docker-compose.yaml
@@ -28,7 +28,7 @@ services:
networks:
- e2e
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 5s
retries: 120
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
index b7609ff874..d28abc8c22 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-hive/docker-compose.yaml
@@ -28,7 +28,7 @@ services:
networks:
- e2e
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 5s
retries: 120
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
index 099736805e..8287eb83de 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-mysql/docker-compose.yaml
@@ -31,7 +31,7 @@ services:
- ./download-mysql.sh:/tmp/download-mysql.sh
entrypoint: ['bash', '-c', '/bin/bash /tmp/download-mysql.sh &&
/opt/dolphinscheduler/bin/start.sh && tail -f /dev/null']
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 5s
retries: 120
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
index 7d1e38832c..878bf24364 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-postgresql/docker-compose.yaml
@@ -28,9 +28,9 @@ services:
networks:
- e2e
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
- timeout: 300s
+ timeout: 5s
retries: 120
depends_on:
postgres:
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
index cf94105313..0e85692395 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/datasource-sqlserver/docker-compose.yaml
@@ -28,7 +28,7 @@ services:
networks:
- e2e
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 5s
retries: 120
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/file-manage/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/file-manage/docker-compose.yaml
index ccfe940a6d..49b9de813f 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/file-manage/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/file-manage/docker-compose.yaml
@@ -28,7 +28,7 @@ services:
networks:
- e2e
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 5s
retries: 120
diff --git
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/workflow-http/docker-compose.yaml
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/workflow-http/docker-compose.yaml
index 2591e3d74a..0f6a4a6205 100644
---
a/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/workflow-http/docker-compose.yaml
+++
b/dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/resources/docker/workflow-http/docker-compose.yaml
@@ -29,7 +29,7 @@ services:
networks:
- e2e
healthcheck:
- test: [ "CMD", "curl", "http://localhost:12345/actuator/health" ]
+ test: [ "CMD", "curl",
"http://localhost:12345/dolphinscheduler/actuator/health" ]
interval: 5s
timeout: 5s
retries: 120