From 770763487a5d14f33748643ceaa2f2981f1f918b Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Tue, 24 Oct 2023 10:41:32 -0500 Subject: [PATCH 1/5] Cleaned up create-app deprecations Signed-off-by: Andre Wanlin --- .changeset/breezy-dogs-serve.md | 5 +++++ .../default-app/packages/backend/package.json.hbs | 3 +++ .../default-app/packages/backend/src/index.ts | 15 +++++++-------- .../packages/backend/src/plugins/catalog.ts | 2 +- .../packages/backend/src/plugins/search.ts.hbs | 7 ++----- 5 files changed, 18 insertions(+), 14 deletions(-) create mode 100644 .changeset/breezy-dogs-serve.md diff --git a/.changeset/breezy-dogs-serve.md b/.changeset/breezy-dogs-serve.md new file mode 100644 index 0000000000..29daea15d3 --- /dev/null +++ b/.changeset/breezy-dogs-serve.md @@ -0,0 +1,5 @@ +--- +'@backstage/create-app': patch +--- + +Cleaned up all the cases where deprecated code was being used diff --git a/packages/create-app/templates/default-app/packages/backend/package.json.hbs b/packages/create-app/templates/default-app/packages/backend/package.json.hbs index cb358db911..02b7418f97 100644 --- a/packages/create-app/templates/default-app/packages/backend/package.json.hbs +++ b/packages/create-app/templates/default-app/packages/backend/package.json.hbs @@ -25,12 +25,15 @@ "@backstage/plugin-auth-backend": "^{{version '@backstage/plugin-auth-backend'}}", "@backstage/plugin-auth-node": "^{{version '@backstage/plugin-auth-node'}}", "@backstage/plugin-catalog-backend": "^{{version '@backstage/plugin-catalog-backend'}}", + "@backstage/plugin-catalog-backend-module-scaffolder-entity-model": "^{{version '@backstage/plugin-catalog-backend-module-scaffolder-entity-model'}}", "@backstage/plugin-permission-common": "^{{version '@backstage/plugin-permission-common'}}", "@backstage/plugin-permission-node": "^{{version '@backstage/plugin-permission-node'}}", "@backstage/plugin-proxy-backend": "^{{version '@backstage/plugin-proxy-backend'}}", "@backstage/plugin-scaffolder-backend": "^{{version '@backstage/plugin-scaffolder-backend'}}", "@backstage/plugin-search-backend": "^{{version '@backstage/plugin-search-backend'}}", + "@backstage/plugin-search-backend-module-catalog": "^{{version '@backstage/plugin-search-backend-module-catalog'}}", "@backstage/plugin-search-backend-module-pg": "^{{version '@backstage/plugin-search-backend-module-pg'}}", + "@backstage/plugin-search-backend-module-techdocs": "^{{version '@backstage/plugin-search-backend-module-techdocs'}}", "@backstage/plugin-search-backend-node": "^{{version '@backstage/plugin-search-backend-node'}}", "@backstage/plugin-techdocs-backend": "^{{version '@backstage/plugin-techdocs-backend'}}", "app": "link:../app", 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 04c4ff9392..abd39502d7 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 @@ -11,7 +11,6 @@ import { createServiceBuilder, loadBackendConfig, getRootLogger, - useHotMemoize, notFoundHandler, CacheManager, DatabaseManager, @@ -78,13 +77,13 @@ async function main() { }); const createEnv = makeCreateEnv(config); - const catalogEnv = useHotMemoize(module, () => createEnv('catalog')); - const scaffolderEnv = useHotMemoize(module, () => createEnv('scaffolder')); - const authEnv = useHotMemoize(module, () => createEnv('auth')); - const proxyEnv = useHotMemoize(module, () => createEnv('proxy')); - const techdocsEnv = useHotMemoize(module, () => createEnv('techdocs')); - const searchEnv = useHotMemoize(module, () => createEnv('search')); - const appEnv = useHotMemoize(module, () => createEnv('app')); + const catalogEnv = createEnv('catalog'); + const scaffolderEnv = createEnv('scaffolder'); + const authEnv = createEnv('auth'); + const proxyEnv = createEnv('proxy'); + const techdocsEnv = createEnv('techdocs'); + const searchEnv = createEnv('search'); + const appEnv = createEnv('app'); const apiRouter = Router(); apiRouter.use('/catalog', await catalog(catalogEnv)); 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 876cb6bccc..4decdca1c4 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 @@ -1,5 +1,5 @@ import { CatalogBuilder } from '@backstage/plugin-catalog-backend'; -import { ScaffolderEntitiesProcessor } from '@backstage/plugin-scaffolder-backend'; +import { ScaffolderEntitiesProcessor } from '@backstage/plugin-catalog-backend-module-scaffolder-entity-model'; import { Router } from 'express'; import { PluginEnvironment } from '../types'; diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs b/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs index e9469dcc1f..a2551a7bae 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs @@ -1,12 +1,11 @@ -import { useHotCleanup } from '@backstage/backend-common'; import { createRouter } from '@backstage/plugin-search-backend'; import { IndexBuilder, LunrSearchEngine, } from '@backstage/plugin-search-backend-node'; import { PluginEnvironment } from '../types'; -import { DefaultCatalogCollatorFactory } from '@backstage/plugin-catalog-backend'; -import { DefaultTechDocsCollatorFactory } from '@backstage/plugin-techdocs-backend'; +import { DefaultCatalogCollatorFactory } from '@backstage/plugin-search-backend-module-catalog'; +import { DefaultTechDocsCollatorFactory } from '@backstage/plugin-search-backend-module-techdocs'; import { Router } from 'express'; export default async function createPlugin( @@ -54,8 +53,6 @@ export default async function createPlugin( const { scheduler } = await indexBuilder.build(); scheduler.start(); - useHotCleanup(module, () => scheduler.stop()); - return await createRouter({ engine: indexBuilder.getSearchEngine(), types: indexBuilder.getDocumentTypes(), From 8c444f3d1d0c50db6006c7fe928b423eac278736 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Tue, 24 Oct 2023 13:14:39 -0500 Subject: [PATCH 2/5] Updated versions with new packages Signed-off-by: Andre Wanlin --- packages/create-app/src/lib/versions.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/create-app/src/lib/versions.ts b/packages/create-app/src/lib/versions.ts index 67db8b4a78..81bae3c0b8 100644 --- a/packages/create-app/src/lib/versions.ts +++ b/packages/create-app/src/lib/versions.ts @@ -55,6 +55,7 @@ import { version as pluginCatalog } from '../../../../plugins/catalog/package.js import { version as pluginCatalogCommon } from '../../../../plugins/catalog-common/package.json'; import { version as pluginCatalogReact } from '../../../../plugins/catalog-react/package.json'; import { version as pluginCatalogBackend } from '../../../../plugins/catalog-backend/package.json'; +import { version as pluginCatalogBackendModuleScaffolderEntityModel } from '../../../../plugins/catalog-backend-module-scaffolder-entity-model/package.json'; import { version as pluginCatalogGraph } from '../../../../plugins/catalog-graph/package.json'; import { version as pluginCatalogImport } from '../../../../plugins/catalog-import/package.json'; import { version as pluginCircleci } from '../../../../plugins/circleci/package.json'; @@ -72,7 +73,9 @@ import { version as pluginScaffolderBackend } from '../../../../plugins/scaffold import { version as pluginSearch } from '../../../../plugins/search/package.json'; import { version as pluginSearchReact } from '../../../../plugins/search-react/package.json'; import { version as pluginSearchBackend } from '../../../../plugins/search-backend/package.json'; +import { version as pluginSearchBackendModuleCatalog } from '../../../../plugins/search-backend-module-catalog/package.json'; import { version as pluginSearchBackendModulePg } from '../../../../plugins/search-backend-module-pg/package.json'; +import { version as pluginSearchBackendModuleTechdocs } from '../../../../plugins/search-backend-module-techdocs/package.json'; import { version as pluginSearchBackendNode } from '../../../../plugins/search-backend-node/package.json'; import { version as pluginTechRadar } from '../../../../plugins/tech-radar/package.json'; import { version as pluginTechdocs } from '../../../../plugins/techdocs/package.json'; @@ -104,6 +107,8 @@ export const packageVersions = { '@backstage/plugin-catalog-common': pluginCatalogCommon, '@backstage/plugin-catalog-react': pluginCatalogReact, '@backstage/plugin-catalog-backend': pluginCatalogBackend, + '@backstage/plugin-catalog-backend-module-scaffolder-entity-model': + pluginCatalogBackendModuleScaffolderEntityModel, '@backstage/plugin-catalog-graph': pluginCatalogGraph, '@backstage/plugin-catalog-import': pluginCatalogImport, '@backstage/plugin-circleci': pluginCircleci, @@ -121,7 +126,11 @@ export const packageVersions = { '@backstage/plugin-search': pluginSearch, '@backstage/plugin-search-react': pluginSearchReact, '@backstage/plugin-search-backend': pluginSearchBackend, + '@backstage/plugin-search-backend-module-catalog': + pluginSearchBackendModuleCatalog, '@backstage/plugin-search-backend-module-pg': pluginSearchBackendModulePg, + '@backstage/plugin-search-backend-module-techdocs': + pluginSearchBackendModuleTechdocs, '@backstage/plugin-search-backend-node': pluginSearchBackendNode, '@backstage/plugin-tech-radar': pluginTechRadar, '@backstage/plugin-techdocs': pluginTechdocs, From 27ae9415dc5598b663fd4cbdd605d0909762021a Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Tue, 24 Oct 2023 13:38:02 -0500 Subject: [PATCH 3/5] Fixed failing test Signed-off-by: Andre Wanlin --- packages/create-app/src/lib/tasks.test.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/create-app/src/lib/tasks.test.ts b/packages/create-app/src/lib/tasks.test.ts index c436bf5ad2..e7c406f51c 100644 --- a/packages/create-app/src/lib/tasks.test.ts +++ b/packages/create-app/src/lib/tasks.test.ts @@ -53,12 +53,15 @@ jest.mock('./versions', () => ({ '@backstage/plugin-auth-backend': '1.0.0', '@backstage/plugin-auth-node': '1.0.0', '@backstage/plugin-catalog-backend': '1.0.0', + '@backstage/plugin-catalog-backend-module-scaffolder-entity-model': '1.0.0', '@backstage/plugin-permission-common': '1.0.0', '@backstage/plugin-permission-node': '1.0.0', '@backstage/plugin-proxy-backend': '1.0.0', '@backstage/plugin-scaffolder-backend': '1.0.0', '@backstage/plugin-search-backend': '1.0.0', + '@backstage/plugin-search-backend-module-catalog': '1.0.0', '@backstage/plugin-search-backend-module-pg': '1.0.0', + '@backstage/plugin-search-backend-module-techdocs': '1.0.0', '@backstage/plugin-search-backend-node': '1.0.0', '@backstage/plugin-techdocs-backend': '1.0.0', '@backstage/app-defaults': '1.0.0', From 2c79f3544e9024db763605f67cdd2cc58a1655d3 Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Wed, 25 Oct 2023 06:38:24 -0500 Subject: [PATCH 4/5] Reverted changes based on feedback Signed-off-by: Andre Wanlin --- .../default-app/packages/backend/src/index.ts | 15 ++++++++------- .../packages/backend/src/plugins/search.ts.hbs | 3 +++ 2 files changed, 11 insertions(+), 7 deletions(-) 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 abd39502d7..04c4ff9392 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 @@ -11,6 +11,7 @@ import { createServiceBuilder, loadBackendConfig, getRootLogger, + useHotMemoize, notFoundHandler, CacheManager, DatabaseManager, @@ -77,13 +78,13 @@ async function main() { }); const createEnv = makeCreateEnv(config); - const catalogEnv = createEnv('catalog'); - const scaffolderEnv = createEnv('scaffolder'); - const authEnv = createEnv('auth'); - const proxyEnv = createEnv('proxy'); - const techdocsEnv = createEnv('techdocs'); - const searchEnv = createEnv('search'); - const appEnv = createEnv('app'); + const catalogEnv = useHotMemoize(module, () => createEnv('catalog')); + const scaffolderEnv = useHotMemoize(module, () => createEnv('scaffolder')); + const authEnv = useHotMemoize(module, () => createEnv('auth')); + const proxyEnv = useHotMemoize(module, () => createEnv('proxy')); + const techdocsEnv = useHotMemoize(module, () => createEnv('techdocs')); + const searchEnv = useHotMemoize(module, () => createEnv('search')); + const appEnv = useHotMemoize(module, () => createEnv('app')); const apiRouter = Router(); apiRouter.use('/catalog', await catalog(catalogEnv)); diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs b/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs index a2551a7bae..467ac60a5a 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/search.ts.hbs @@ -1,3 +1,4 @@ +import { useHotCleanup } from '@backstage/backend-common'; import { createRouter } from '@backstage/plugin-search-backend'; import { IndexBuilder, @@ -53,6 +54,8 @@ export default async function createPlugin( const { scheduler } = await indexBuilder.build(); scheduler.start(); + useHotCleanup(module, () => scheduler.stop()); + return await createRouter({ engine: indexBuilder.getSearchEngine(), types: indexBuilder.getDocumentTypes(), From 4d99333964442a11b18574e61ccf62a79adb07af Mon Sep 17 00:00:00 2001 From: Andre Wanlin Date: Wed, 25 Oct 2023 06:41:50 -0500 Subject: [PATCH 5/5] Updated changeset Signed-off-by: Andre Wanlin --- .changeset/breezy-dogs-serve.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/breezy-dogs-serve.md b/.changeset/breezy-dogs-serve.md index 29daea15d3..a92e5cdb0c 100644 --- a/.changeset/breezy-dogs-serve.md +++ b/.changeset/breezy-dogs-serve.md @@ -2,4 +2,4 @@ '@backstage/create-app': patch --- -Cleaned up all the cases where deprecated code was being used +Cleaned up cases where deprecated code was being used but had a new location they should be imported from