diff --git a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts index c993e0d46d..a2cb19ce33 100644 --- a/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts +++ b/plugins/scaffolder-backend/src/scaffolder/dryrun/createDryRunner.ts @@ -38,10 +38,11 @@ import { BackstageCredentials, resolveSafeChildPath, } from '@backstage/backend-plugin-api'; -import type { UserEntity } from '@backstage/catalog-model'; +import type { EntityMeta, UserEntity } from '@backstage/catalog-model'; interface DryRunInput { spec: TaskSpec; + templateMetadata: EntityMeta; secrets?: TaskSecrets; directoryContents: SerializedFile[]; credentials: BackstageCredentials; @@ -105,7 +106,6 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { await deserializeDirectoryContents(contentsPath, input.directoryContents); const abortSignal = new AbortController().signal; - const result = await workflowRunner.execute({ spec: { ...input.spec, @@ -119,6 +119,9 @@ export function createDryRunner(options: TemplateTesterCreateOptions) { ], templateInfo: { entityRef: 'template:default/dry-run', + entity: { + metadata: input.templateMetadata, + }, baseUrl: pathToFileURL( resolveSafeChildPath(contentsPath, 'template.yaml'), ).toString(), diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index 35dacf6559..23c3988b0d 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -825,6 +825,7 @@ export async function createRouter( ref: userEntityRef, }, }, + templateMetadata: template.metadata, directoryContents: (body.directoryContents ?? []).map(file => ({ path: file.path, content: Buffer.from(file.base64Content, 'base64'),