From 3b0af3f48f79d040d89dbb3beb166548ab010f2b Mon Sep 17 00:00:00 2001 From: Pere Miquel Brull Date: Mon, 4 Aug 2025 06:07:27 +0200 Subject: [PATCH] MINOR - Handle OM connection on DC trigger (#22718) * MINOR - Handle OM connection on DC trigger * MINOR - Handle OM connection on DC trigger --- .../service/jdbi3/DataContractRepository.java | 30 +++++++++---------- .../data/DataContractResourceTest.java | 9 ------ 2 files changed, 14 insertions(+), 25 deletions(-) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataContractRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataContractRepository.java index ad43f00bbcd..6ec8324a6ca 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataContractRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataContractRepository.java @@ -495,7 +495,7 @@ public class DataContractRepository extends EntityRepository { if (!pipeline.getDeployed()) { prepareAndDeployIngestionPipeline(pipeline, testSuite); } - pipelineServiceClient.runPipeline(pipeline, testSuite); + prepareAndRunIngestionPipeline(pipeline, testSuite); } private void prepareAndDeployIngestionPipeline(IngestionPipeline pipeline, TestSuite testSuite) { @@ -515,6 +515,16 @@ public class DataContractRepository extends EntityRepository { } } + private void prepareAndRunIngestionPipeline(IngestionPipeline pipeline, TestSuite testSuite) { + OpenMetadataConnection openMetadataServerConnection = + new OpenMetadataConnectionBuilder(openMetadataApplicationConfig, pipeline).build(); + pipeline.setOpenMetadataServerConnection( + SecretsManagerFactory.getSecretsManager() + .encryptOpenMetadataConnection(openMetadataServerConnection, false)); + + pipelineServiceClient.runPipeline(pipeline, testSuite); + } + private SemanticsValidation validateSemantics(DataContract dataContract) { SemanticsValidation validation = new SemanticsValidation(); @@ -577,31 +587,19 @@ public class DataContractRepository extends EntityRepository { if (!nullOrEmpty(result.getSchemaValidation())) { if (result.getSchemaValidation().getFailed() > 0) { - result - .withContractExecutionStatus(ContractExecutionStatus.Failed) - .withResult("Schema validation failed"); + result.withContractExecutionStatus(ContractExecutionStatus.Failed); } } if (!nullOrEmpty(result.getSemanticsValidation())) { if (result.getSemanticsValidation().getFailed() > 0) { - result - .withContractExecutionStatus(ContractExecutionStatus.Failed) - .withResult( - result.getResult() != null - ? result.getResult() + "; Semantics validation failed" - : "Semantics validation failed"); + result.withContractExecutionStatus(ContractExecutionStatus.Failed); } } if (!nullOrEmpty(result.getQualityValidation())) { if (result.getQualityValidation().getFailed() > 0) { - result - .withContractExecutionStatus(ContractExecutionStatus.Failed) - .withResult( - result.getResult() != null - ? result.getResult() + "; Quality validation failed" - : "Quality validation failed"); + result.withContractExecutionStatus(ContractExecutionStatus.Failed); } } } diff --git a/openmetadata-service/src/test/java/org/openmetadata/service/resources/data/DataContractResourceTest.java b/openmetadata-service/src/test/java/org/openmetadata/service/resources/data/DataContractResourceTest.java index 1c8d8e54f61..1f6d9fcbf56 100644 --- a/openmetadata-service/src/test/java/org/openmetadata/service/resources/data/DataContractResourceTest.java +++ b/openmetadata-service/src/test/java/org/openmetadata/service/resources/data/DataContractResourceTest.java @@ -24,8 +24,6 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.openmetadata.common.utils.CommonUtil.nullOrEmpty; import static org.openmetadata.service.Entity.DATA_CONTRACT; -import static org.openmetadata.service.resources.EntityResourceTest.TEAM11_REF; -import static org.openmetadata.service.resources.EntityResourceTest.USER1_REF; import static org.openmetadata.service.util.TestUtils.ADMIN_AUTH_HEADERS; import static org.openmetadata.service.util.TestUtils.LONG_ENTITY_NAME; import static org.openmetadata.service.util.TestUtils.TEST_AUTH_HEADERS; @@ -2331,7 +2329,6 @@ public class DataContractResourceTest extends EntityResourceTest