mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-09-25 17:04:54 +00:00
Fix SettingsCache initialization (#13395)
* Fix SettingsCache initialization * Fix SettingsCache initialization * Fix SettingsCache initialization
This commit is contained in:
parent
66d3fbb75d
commit
11f1df437b
@ -149,12 +149,15 @@ public class OpenMetadataApplication extends Application<OpenMetadataApplication
|
|||||||
JdbiTransactionManager.initialize(jdbiUnitOfWorkProvider.getHandleManager());
|
JdbiTransactionManager.initialize(jdbiUnitOfWorkProvider.getHandleManager());
|
||||||
environment.jersey().register(new JdbiUnitOfWorkApplicationEventListener(new HashSet<>()));
|
environment.jersey().register(new JdbiUnitOfWorkApplicationEventListener(new HashSet<>()));
|
||||||
|
|
||||||
|
// as first step register all the repositories
|
||||||
|
Entity.initializeRepositories(collectionDAO);
|
||||||
|
|
||||||
|
// Init Settings Cache after repositories
|
||||||
|
SettingsCache.initialize(catalogConfig);
|
||||||
|
|
||||||
// Configure the Fernet instance
|
// Configure the Fernet instance
|
||||||
Fernet.getInstance().setFernetKey(catalogConfig);
|
Fernet.getInstance().setFernetKey(catalogConfig);
|
||||||
|
|
||||||
// Init Settings Cache
|
|
||||||
SettingsCache.initialize(catalogConfig);
|
|
||||||
|
|
||||||
// init Secret Manager
|
// init Secret Manager
|
||||||
final SecretsManager secretsManager =
|
final SecretsManager secretsManager =
|
||||||
SecretsManagerFactory.createSecretsManager(
|
SecretsManagerFactory.createSecretsManager(
|
||||||
|
@ -38,7 +38,6 @@ import org.openmetadata.common.utils.CommonUtil;
|
|||||||
import org.openmetadata.schema.Function;
|
import org.openmetadata.schema.Function;
|
||||||
import org.openmetadata.schema.type.CollectionDescriptor;
|
import org.openmetadata.schema.type.CollectionDescriptor;
|
||||||
import org.openmetadata.schema.type.CollectionInfo;
|
import org.openmetadata.schema.type.CollectionInfo;
|
||||||
import org.openmetadata.service.Entity;
|
|
||||||
import org.openmetadata.service.OpenMetadataApplicationConfig;
|
import org.openmetadata.service.OpenMetadataApplicationConfig;
|
||||||
import org.openmetadata.service.jdbi3.CollectionDAO;
|
import org.openmetadata.service.jdbi3.CollectionDAO;
|
||||||
import org.openmetadata.service.security.Authorizer;
|
import org.openmetadata.service.security.Authorizer;
|
||||||
@ -164,7 +163,6 @@ public final class CollectionRegistry {
|
|||||||
CollectionDAO daoObject,
|
CollectionDAO daoObject,
|
||||||
Authorizer authorizer,
|
Authorizer authorizer,
|
||||||
AuthenticatorHandler authenticatorHandler) {
|
AuthenticatorHandler authenticatorHandler) {
|
||||||
Entity.initializeRepositories(daoObject);
|
|
||||||
// Build list of ResourceDescriptors
|
// Build list of ResourceDescriptors
|
||||||
for (Map.Entry<String, CollectionDetails> e : collectionMap.entrySet()) {
|
for (Map.Entry<String, CollectionDetails> e : collectionMap.entrySet()) {
|
||||||
CollectionDetails details = e.getValue();
|
CollectionDetails details = e.getValue();
|
||||||
|
@ -17,7 +17,6 @@ import static org.openmetadata.common.utils.CommonUtil.listOrEmpty;
|
|||||||
import static org.openmetadata.service.Entity.FIELD_OWNER;
|
import static org.openmetadata.service.Entity.FIELD_OWNER;
|
||||||
import static org.openmetadata.service.Entity.FIELD_PIPELINE_STATUS;
|
import static org.openmetadata.service.Entity.FIELD_PIPELINE_STATUS;
|
||||||
import static org.openmetadata.service.jdbi3.IngestionPipelineRepository.validateProfileSample;
|
import static org.openmetadata.service.jdbi3.IngestionPipelineRepository.validateProfileSample;
|
||||||
import static org.openmetadata.service.resources.services.metadata.MetadataServiceResource.OPENMETADATA_SERVICE;
|
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.ExternalDocumentation;
|
import io.swagger.v3.oas.annotations.ExternalDocumentation;
|
||||||
import io.swagger.v3.oas.annotations.Hidden;
|
import io.swagger.v3.oas.annotations.Hidden;
|
||||||
@ -61,15 +60,10 @@ import org.openmetadata.schema.api.services.ingestionPipelines.CreateIngestionPi
|
|||||||
import org.openmetadata.schema.entity.services.ingestionPipelines.IngestionPipeline;
|
import org.openmetadata.schema.entity.services.ingestionPipelines.IngestionPipeline;
|
||||||
import org.openmetadata.schema.entity.services.ingestionPipelines.PipelineServiceClientResponse;
|
import org.openmetadata.schema.entity.services.ingestionPipelines.PipelineServiceClientResponse;
|
||||||
import org.openmetadata.schema.entity.services.ingestionPipelines.PipelineStatus;
|
import org.openmetadata.schema.entity.services.ingestionPipelines.PipelineStatus;
|
||||||
import org.openmetadata.schema.entity.services.ingestionPipelines.PipelineType;
|
|
||||||
import org.openmetadata.schema.metadataIngestion.MetadataToElasticSearchPipeline;
|
|
||||||
import org.openmetadata.schema.metadataIngestion.SourceConfig;
|
|
||||||
import org.openmetadata.schema.services.connections.metadata.OpenMetadataConnection;
|
import org.openmetadata.schema.services.connections.metadata.OpenMetadataConnection;
|
||||||
import org.openmetadata.schema.type.EntityHistory;
|
import org.openmetadata.schema.type.EntityHistory;
|
||||||
import org.openmetadata.schema.type.EntityReference;
|
|
||||||
import org.openmetadata.schema.type.Include;
|
import org.openmetadata.schema.type.Include;
|
||||||
import org.openmetadata.schema.type.MetadataOperation;
|
import org.openmetadata.schema.type.MetadataOperation;
|
||||||
import org.openmetadata.schema.type.ProviderType;
|
|
||||||
import org.openmetadata.sdk.PipelineServiceClient;
|
import org.openmetadata.sdk.PipelineServiceClient;
|
||||||
import org.openmetadata.service.Entity;
|
import org.openmetadata.service.Entity;
|
||||||
import org.openmetadata.service.OpenMetadataApplicationConfig;
|
import org.openmetadata.service.OpenMetadataApplicationConfig;
|
||||||
@ -85,7 +79,6 @@ import org.openmetadata.service.security.AuthorizationException;
|
|||||||
import org.openmetadata.service.security.Authorizer;
|
import org.openmetadata.service.security.Authorizer;
|
||||||
import org.openmetadata.service.security.policyevaluator.OperationContext;
|
import org.openmetadata.service.security.policyevaluator.OperationContext;
|
||||||
import org.openmetadata.service.util.EntityUtil.Fields;
|
import org.openmetadata.service.util.EntityUtil.Fields;
|
||||||
import org.openmetadata.service.util.IngestionPipelineUtils;
|
|
||||||
import org.openmetadata.service.util.OpenMetadataConnectionBuilder;
|
import org.openmetadata.service.util.OpenMetadataConnectionBuilder;
|
||||||
import org.openmetadata.service.util.ResultList;
|
import org.openmetadata.service.util.ResultList;
|
||||||
|
|
||||||
@ -125,51 +118,6 @@ public class IngestionPipelineResource extends EntityResource<IngestionPipeline,
|
|||||||
this.pipelineServiceClient =
|
this.pipelineServiceClient =
|
||||||
PipelineServiceClientFactory.createPipelineServiceClient(config.getPipelineServiceClientConfiguration());
|
PipelineServiceClientFactory.createPipelineServiceClient(config.getPipelineServiceClientConfiguration());
|
||||||
repository.setPipelineServiceClient(pipelineServiceClient);
|
repository.setPipelineServiceClient(pipelineServiceClient);
|
||||||
createIndexAndInsightPipeline(config);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void createIndexAndInsightPipeline(OpenMetadataApplicationConfig config) {
|
|
||||||
// Metadata Service is created only when ES config is present
|
|
||||||
if (config.getElasticSearchConfiguration() != null) {
|
|
||||||
try {
|
|
||||||
EntityReference metadataService =
|
|
||||||
this.repository.getByName(null, OPENMETADATA_SERVICE, repository.getFields("id")).getEntityReference();
|
|
||||||
// Create Data Insights Pipeline
|
|
||||||
CreateIngestionPipeline createPipelineRequest =
|
|
||||||
new CreateIngestionPipeline()
|
|
||||||
.withName(DEFAULT_INSIGHT_PIPELINE)
|
|
||||||
.withDisplayName(DEFAULT_INSIGHT_PIPELINE)
|
|
||||||
.withDescription("Data Insights Pipeline")
|
|
||||||
.withPipelineType(PipelineType.DATA_INSIGHT)
|
|
||||||
.withSourceConfig(
|
|
||||||
new SourceConfig()
|
|
||||||
.withConfig(
|
|
||||||
new MetadataToElasticSearchPipeline()
|
|
||||||
.withType(
|
|
||||||
MetadataToElasticSearchPipeline.MetadataToESConfigType.METADATA_TO_ELASTIC_SEARCH)))
|
|
||||||
.withAirflowConfig(IngestionPipelineUtils.getDefaultAirflowConfig())
|
|
||||||
.withService(metadataService);
|
|
||||||
// Get Pipeline
|
|
||||||
IngestionPipeline dataInsightPipeline =
|
|
||||||
getIngestionPipeline(createPipelineRequest, "system").withProvider(ProviderType.SYSTEM);
|
|
||||||
repository.setFullyQualifiedName(dataInsightPipeline);
|
|
||||||
repository.initializeEntity(dataInsightPipeline);
|
|
||||||
|
|
||||||
// Create Reindex Pipeline
|
|
||||||
createPipelineRequest
|
|
||||||
.withName(DEFAULT_REINDEX_PIPELINE)
|
|
||||||
.withDisplayName(DEFAULT_REINDEX_PIPELINE)
|
|
||||||
.withDescription("Elastic Search Reindexing Pipeline")
|
|
||||||
.withPipelineType(PipelineType.ELASTIC_SEARCH_REINDEX);
|
|
||||||
// Get Pipeline
|
|
||||||
IngestionPipeline elasticSearchPipeline =
|
|
||||||
getIngestionPipeline(createPipelineRequest, "system").withProvider(ProviderType.SYSTEM);
|
|
||||||
repository.setFullyQualifiedName(elasticSearchPipeline);
|
|
||||||
repository.initializeEntity(elasticSearchPipeline);
|
|
||||||
} catch (Exception ex) {
|
|
||||||
LOG.error("[IngestionPipelineResource] Failed in Creating Reindex and Insight Pipeline", ex);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class IngestionPipelineList extends ResultList<IngestionPipeline> {
|
public static class IngestionPipelineList extends ResultList<IngestionPipeline> {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user