diff --git a/.changeset/itchy-kiwis-warn.md b/.changeset/itchy-kiwis-warn.md new file mode 100644 index 0000000000..d2af94d0ab --- /dev/null +++ b/.changeset/itchy-kiwis-warn.md @@ -0,0 +1,5 @@ +--- +'@backstage/create-app': patch +--- + +Adds IdentityApi configuration to create-app scaffolding templates. 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 3bd070ee9b..2ee46723e6 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 @@ -24,6 +24,7 @@ "@backstage/config": "^{{version '@backstage/config'}}", "@backstage/plugin-app-backend": "^{{version '@backstage/plugin-app-backend'}}", "@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-permission-common": "^{{version '@backstage/plugin-permission-common'}}", "@backstage/plugin-permission-node": "^{{version '@backstage/plugin-permission-node'}}", 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 70bc66bcdd..40cfbe62f1 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 @@ -30,6 +30,7 @@ import techdocs from './plugins/techdocs'; import search from './plugins/search'; import { PluginEnvironment } from './types'; import { ServerPermissionClient } from '@backstage/plugin-permission-node'; +import {DefaultIdentityClient} from "../../../../../../../dist-types/plugins/auth-node/src"; function makeCreateEnv(config: Config) { const root = getRootLogger(); @@ -39,6 +40,13 @@ function makeCreateEnv(config: Config) { const databaseManager = DatabaseManager.fromConfig(config); const tokenManager = ServerTokenManager.noop(); const taskScheduler = TaskScheduler.fromConfig(config); + + const identity = DefaultIdentityClient.create({ + discovery, + issuer: undefined, + algorithms: undefined, + }); + const permissions = ServerPermissionClient.fromConfig(config, { discovery, tokenManager, @@ -61,6 +69,7 @@ function makeCreateEnv(config: Config) { tokenManager, scheduler, permissions, + identity, }; }; } diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts b/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts index 7ce5fcf31a..77e1e94a66 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/scaffolder.ts @@ -16,5 +16,6 @@ export default async function createPlugin( database: env.database, reader: env.reader, catalogClient, + identity: env.identity }); } 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 8e0a86404b..9db9adadf0 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 @@ -9,6 +9,7 @@ import { } from '@backstage/backend-common'; import { PluginTaskScheduler } from '@backstage/backend-tasks'; import { PermissionEvaluator } from '@backstage/plugin-permission-common'; +import { IdentityApi } from "@backstage/plugin-auth-node"; export type PluginEnvironment = { logger: Logger; @@ -20,4 +21,5 @@ export type PluginEnvironment = { tokenManager: TokenManager; scheduler: PluginTaskScheduler; permissions: PermissionEvaluator; + identity: IdentityApi; };