diff --git a/plugins/scaffolder-backend/src/service/rules.ts b/plugins/scaffolder-backend/src/service/rules.ts index dad0b84097..85bcca3e05 100644 --- a/plugins/scaffolder-backend/src/service/rules.ts +++ b/plugins/scaffolder-backend/src/service/rules.ts @@ -20,11 +20,10 @@ import { TemplateEntityStepV1beta3, TemplateParameter, } from '@backstage/plugin-scaffolder-common'; -import { TemplateProperty } from '@backstage/plugin-scaffolder-common'; import { z } from 'zod'; export const createScaffolderStepPermissionRule = makeCreatePermissionRule< - TemplateEntityStepV1beta3 | TemplateProperty | TemplateParameter, + TemplateEntityStepV1beta3 | TemplateParameter, {}, typeof RESOURCE_TYPE_SCAFFOLDER_TEMPLATE >(); @@ -37,7 +36,7 @@ const hasTag = createScaffolderStepPermissionRule({ tag: z.string().describe('Name of the tag to match on'), }), apply: (resource, { tag }) => { - return resource.metadata?.tags?.includes(tag) ?? false; + return resource['backstage:accessControl']?.tags?.includes(tag) ?? false; }, toQuery: () => ({}), }); diff --git a/plugins/scaffolder-common/src/TemplateEntityV1beta3.ts b/plugins/scaffolder-common/src/TemplateEntityV1beta3.ts index 63dae930c2..f8c47c7881 100644 --- a/plugins/scaffolder-common/src/TemplateEntityV1beta3.ts +++ b/plugins/scaffolder-common/src/TemplateEntityV1beta3.ts @@ -76,13 +76,13 @@ export interface TemplateEntityStepV1beta3 extends JsonObject { action: string; input?: JsonObject; if?: string | boolean; - metadata?: TemplateSpecValuesMetadata; + 'backstage:accessControl'?: TemplateAccessControl; } /** * TODO */ -export interface TemplateSpecValuesMetadata extends JsonObject { +export interface TemplateAccessControl extends JsonObject { tags?: string[]; } @@ -90,15 +90,8 @@ export interface TemplateSpecValuesMetadata extends JsonObject { * TODO */ export interface TemplateParameter extends JsonObject { - metadata?: TemplateSpecValuesMetadata; - properties?: { [name: string]: TemplateProperty }; -} - -/** - * TODO - */ -export interface TemplateProperty extends JsonObject { - metadata?: TemplateSpecValuesMetadata; + 'backstage:accessControl'?: TemplateAccessControl; + properties?: { [name: string]: JsonObject }; } const validator = entityKindSchemaValidator(schema); diff --git a/plugins/scaffolder-common/src/index.ts b/plugins/scaffolder-common/src/index.ts index c418823e12..ec84b0e022 100644 --- a/plugins/scaffolder-common/src/index.ts +++ b/plugins/scaffolder-common/src/index.ts @@ -31,5 +31,5 @@ export type { TemplateEntityStepV1beta3, TemplateParameter, TemplateProperty, - TemplateSpecValuesMetadata, + TemplateAccessControl as TemplateSpecValuesMetadata, } from './TemplateEntityV1beta3';