From f85246583ed71a84b965799bc4fa13f06fbea2ef Mon Sep 17 00:00:00 2001 From: Mohit Yadav <105265192+mohityadav766@users.noreply.github.com> Date: Fri, 20 Sep 2024 19:37:16 +0530 Subject: [PATCH] Fix Automator Search (#17942) * Fix Automator Search * Add only to index --- .../ingestionpipelines/IngestionPipelineResource.java | 1 + .../service/search/indexes/IngestionPipelineIndex.java | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/resources/services/ingestionpipelines/IngestionPipelineResource.java b/openmetadata-service/src/main/java/org/openmetadata/service/resources/services/ingestionpipelines/IngestionPipelineResource.java index 25461f404133..51757d6c9f6d 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/resources/services/ingestionpipelines/IngestionPipelineResource.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/resources/services/ingestionpipelines/IngestionPipelineResource.java @@ -939,6 +939,7 @@ public IngestionPipeline deletePipelineStatus( private IngestionPipeline getIngestionPipeline(CreateIngestionPipeline create, String user) { OpenMetadataConnection openMetadataServerConnection = new OpenMetadataConnectionBuilder(openMetadataApplicationConfig).build(); + return repository .copy(new IngestionPipeline(), create, user) .withPipelineType(create.getPipelineType()) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/search/indexes/IngestionPipelineIndex.java b/openmetadata-service/src/main/java/org/openmetadata/service/search/indexes/IngestionPipelineIndex.java index 3a38121e8003..34c91d552f3a 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/search/indexes/IngestionPipelineIndex.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/search/indexes/IngestionPipelineIndex.java @@ -6,11 +6,13 @@ import java.util.Map; import java.util.Optional; import java.util.Set; +import org.json.JSONObject; import org.openmetadata.schema.entity.services.ingestionPipelines.AirflowConfig; import org.openmetadata.schema.entity.services.ingestionPipelines.IngestionPipeline; import org.openmetadata.service.Entity; import org.openmetadata.service.search.ParseTags; import org.openmetadata.service.search.models.SearchSuggest; +import org.openmetadata.service.util.JsonUtils; public class IngestionPipelineIndex implements SearchIndex { final IngestionPipeline ingestionPipeline; @@ -73,7 +75,11 @@ public Map buildSearchIndexDocInternal(Map doc) airflowConfigMap.put("scheduleInterval", scheduleInterval); doc.put("airflowConfig", airflowConfigMap); }); - + JSONObject sourceConfigJson = + new JSONObject(JsonUtils.pojoToJson(ingestionPipeline.getSourceConfig().getConfig())); + Optional.ofNullable(sourceConfigJson.optJSONObject("appConfig")) + .map(appConfig -> appConfig.optString("type", null)) + .ifPresent(c -> doc.put("applicationType", c)); return doc; }