From 562611ef56f61c55fbedbb780a84e2e4669d22bc Mon Sep 17 00:00:00 2001 From: Vincenzo Scamporlino Date: Mon, 16 Jan 2023 11:36:03 +0100 Subject: [PATCH] scaffolder: make rule generic Signed-off-by: Vincenzo Scamporlino --- .../scaffolder-backend/src/service/rules.ts | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/plugins/scaffolder-backend/src/service/rules.ts b/plugins/scaffolder-backend/src/service/rules.ts index 5166c86723..0ca83fd5fc 100644 --- a/plugins/scaffolder-backend/src/service/rules.ts +++ b/plugins/scaffolder-backend/src/service/rules.ts @@ -14,23 +14,24 @@ * limitations under the License. */ -import { EntitiesSearchFilter } from '@backstage/plugin-catalog-backend'; import { makeCreatePermissionRule } from '@backstage/plugin-permission-node'; import { - RESOURCE_TYPE_SCAFFOLDER_STEP, + RESOURCE_TYPE_SCAFFOLDER_PROPERTY, TemplateEntityStepV1beta3, + TemplateParameter, } from '@backstage/plugin-scaffolder-common'; +import { TemplateProperty } from '@backstage/plugin-scaffolder-common'; import { z } from 'zod'; export const createScaffolderStepPermissionRule = makeCreatePermissionRule< - TemplateEntityStepV1beta3, - EntitiesSearchFilter, - typeof RESOURCE_TYPE_SCAFFOLDER_STEP + TemplateEntityStepV1beta3 | TemplateProperty | TemplateParameter, + {}, + typeof RESOURCE_TYPE_SCAFFOLDER_PROPERTY >(); const hasTag = createScaffolderStepPermissionRule({ name: 'HAS_TAG', - resourceType: RESOURCE_TYPE_SCAFFOLDER_STEP, + resourceType: RESOURCE_TYPE_SCAFFOLDER_PROPERTY, description: 'Match a scaffolder step with the given tag', paramsSchema: z.object({ tag: z.string(), @@ -38,10 +39,7 @@ const hasTag = createScaffolderStepPermissionRule({ apply: (resource, { tag }) => { return resource.metadata?.tags?.includes(tag) ?? false; }, - toQuery: ({ tag }) => ({ - key: 'metadata.tags', - values: [tag], - }), + toQuery: () => ({}), }); export const scaffolderStepRules = { hasTag };