From 9ea2c4fb359d0c8b5acf96d0eace2d079ecb7c62 Mon Sep 17 00:00:00 2001 From: aramissennyeydd Date: Wed, 22 Oct 2025 16:24:05 -0400 Subject: [PATCH] add missing modules Signed-off-by: aramissennyeydd --- .../instanceMetadataServiceFactory.ts | 25 ++++++++++++++++--- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/packages/backend-defaults/src/alpha/entrypoints/instanceMetadata/instanceMetadataServiceFactory.ts b/packages/backend-defaults/src/alpha/entrypoints/instanceMetadata/instanceMetadataServiceFactory.ts index a50c8f0058..bd2d427a59 100644 --- a/packages/backend-defaults/src/alpha/entrypoints/instanceMetadata/instanceMetadataServiceFactory.ts +++ b/packages/backend-defaults/src/alpha/entrypoints/instanceMetadata/instanceMetadataServiceFactory.ts @@ -18,7 +18,11 @@ import { coreServices, createServiceFactory, } from '@backstage/backend-plugin-api'; -import { instanceMetadataServiceRef } from '@backstage/backend-plugin-api/alpha'; +import { + BackendFeatureMeta, + InstanceMetadataService, + instanceMetadataServiceRef, +} from '@backstage/backend-plugin-api/alpha'; /** * @alpha @@ -31,9 +35,22 @@ export const instanceMetadataServiceFactory = createServiceFactory({ }, factory: async ({ instanceMetadata }) => { const plugins = await instanceMetadata.getInstalledPlugins(); - const service = { - getInstalledFeatures: () => - plugins.map(e => ({ type: 'plugin' as const, pluginId: e.pluginId })), + const features: BackendFeatureMeta[] = []; + for (const plugin of plugins) { + features.push({ + type: 'plugin' as const, + pluginId: plugin.pluginId, + }); + for (const module of plugin.modules) { + features.push({ + type: 'module' as const, + pluginId: plugin.pluginId, + moduleId: module.moduleId, + }); + } + } + const service: InstanceMetadataService = { + getInstalledFeatures: () => features, }; return service;