From 327f87562d337bce4d559f05becbcd035d61ab7c Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 2 Oct 2020 17:14:22 +0200 Subject: [PATCH] backend: add UrlReader --- packages/backend/src/index.ts | 4 +++- packages/backend/src/plugins/catalog.ts | 5 +++-- packages/backend/src/types.ts | 3 ++- .../templates/default-app/packages/backend/src/index.ts | 4 +++- .../default-app/packages/backend/src/plugins/catalog.ts | 3 ++- .../templates/default-app/packages/backend/src/types.ts | 3 ++- 6 files changed, 15 insertions(+), 7 deletions(-) diff --git a/packages/backend/src/index.ts b/packages/backend/src/index.ts index e86034dd29..6cfc4bc519 100644 --- a/packages/backend/src/index.ts +++ b/packages/backend/src/index.ts @@ -32,6 +32,7 @@ import { useHotMemoize, notFoundHandler, SingleHostDiscovery, + UrlReaders, } from '@backstage/backend-common'; import { ConfigReader, AppConfig } from '@backstage/config'; import healthcheck from './plugins/healthcheck'; @@ -60,8 +61,9 @@ function makeCreateEnv(loadedConfigs: AppConfig[]) { }, }, ); + const reader = UrlReaders.default({ logger }).createWithConfig(config); const discovery = SingleHostDiscovery.fromConfig(config); - return { logger, database, config, discovery }; + return { logger, database, config, reader, discovery }; }; } diff --git a/packages/backend/src/plugins/catalog.ts b/packages/backend/src/plugins/catalog.ts index 219b04a0f7..c1d390f8cc 100644 --- a/packages/backend/src/plugins/catalog.ts +++ b/packages/backend/src/plugins/catalog.ts @@ -28,10 +28,11 @@ import { useHotCleanup } from '@backstage/backend-common'; export default async function createPlugin({ logger, - database, config, + reader, + database, }: PluginEnvironment) { - const locationReader = new LocationReaders({ logger, config }); + const locationReader = new LocationReaders({ logger, reader, config }); const db = await DatabaseManager.createDatabase(database, { logger }); const entitiesCatalog = new DatabaseEntitiesCatalog(db); diff --git a/packages/backend/src/types.ts b/packages/backend/src/types.ts index 3709fc8d9a..9257fcc9cf 100644 --- a/packages/backend/src/types.ts +++ b/packages/backend/src/types.ts @@ -17,11 +17,12 @@ import Knex from 'knex'; import { Logger } from 'winston'; import { Config } from '@backstage/config'; -import { PluginEndpointDiscovery } from '@backstage/backend-common'; +import { PluginEndpointDiscovery, UrlReader } from '@backstage/backend-common'; export type PluginEnvironment = { logger: Logger; database: Knex; config: Config; + reader: UrlReader; discovery: PluginEndpointDiscovery; }; diff --git a/packages/create-app/templates/default-app/packages/backend/src/index.ts b/packages/create-app/templates/default-app/packages/backend/src/index.ts index 47ab2c5993..8165b6861a 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/index.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/index.ts @@ -16,6 +16,7 @@ import { useHotMemoize, notFoundHandler, SingleHostDiscovery, + UrlReaders, } from '@backstage/backend-common'; import { ConfigReader, AppConfig } from '@backstage/config'; import auth from './plugins/auth'; @@ -38,8 +39,9 @@ function makeCreateEnv(loadedConfigs: AppConfig[]) { }, }, ); + const reader = UrlReaders.default({ logger }).createWithConfig(config); const discovery = SingleHostDiscovery.fromConfig(config); - return { logger, database, config, discovery }; + return { logger, database, config, reader, discovery }; }; } diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/catalog.ts b/packages/create-app/templates/default-app/packages/backend/src/plugins/catalog.ts index aa0538a6d8..345ac4c23d 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/catalog.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/catalog.ts @@ -13,9 +13,10 @@ import { useHotCleanup } from '@backstage/backend-common'; export default async function createPlugin({ logger, config, + reader, database, }: PluginEnvironment) { - const locationReader = new LocationReaders({ logger, config }); + const locationReader = new LocationReaders({ logger, reader, config }); const db = await DatabaseManager.createDatabase(database, { logger }); const entitiesCatalog = new DatabaseEntitiesCatalog(db); diff --git a/packages/create-app/templates/default-app/packages/backend/src/types.ts b/packages/create-app/templates/default-app/packages/backend/src/types.ts index d145255390..aa003f63a5 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/types.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/types.ts @@ -1,11 +1,12 @@ import Knex from 'knex'; import { Logger } from 'winston'; import { Config } from '@backstage/config'; -import { PluginEndpointDiscovery } from '@backstage/backend-common'; +import { PluginEndpointDiscovery, UrlReader } from '@backstage/backend-common'; export type PluginEnvironment = { logger: Logger; database: Knex; config: Config; + reader: UrlReader discovery: PluginEndpointDiscovery; };