Merge pull request #23520 from szubster/search-backend-module-optional

Enable Postgres Search Module only on Supported Databases
This commit is contained in:
Fredrik Adelöw
2024-04-15 15:05:31 +02:00
committed by GitHub
2 changed files with 22 additions and 6 deletions
+7
View File
@@ -0,0 +1,7 @@
---
'@backstage/plugin-search-backend-module-pg': patch
---
Enable module only on supported databases
Also pass logger to the service
+15 -6
View File
@@ -19,6 +19,7 @@ import {
} from '@backstage/backend-plugin-api';
import { searchEngineRegistryExtensionPoint } from '@backstage/plugin-search-backend-node/alpha';
import { PgSearchEngine } from './PgSearchEngine';
import { loggerToWinstonLogger } from '@backstage/backend-common';
/**
* @alpha
@@ -33,13 +34,21 @@ export default createBackendModule({
searchEngineRegistry: searchEngineRegistryExtensionPoint,
database: coreServices.database,
config: coreServices.rootConfig,
logger: coreServices.logger,
},
async init({ searchEngineRegistry, database, config }) {
searchEngineRegistry.setSearchEngine(
await PgSearchEngine.fromConfig(config, {
database: database,
}),
);
async init({ searchEngineRegistry, database, config, logger }) {
if (await PgSearchEngine.supported(database)) {
searchEngineRegistry.setSearchEngine(
await PgSearchEngine.fromConfig(config, {
database,
logger: loggerToWinstonLogger(logger),
}),
);
} else {
logger.warn(
'Postgres search engine is not supported, skipping registration of search-backend-module-pg',
);
}
},
});
},