From 2938ac6b0d59b33623bed57ab5872a64d2c5866f Mon Sep 17 00:00:00 2001 From: Brian Phillips <28457+brianphillips@users.noreply.github.com> Date: Wed, 17 May 2023 10:38:20 -0500 Subject: [PATCH] Use permission integration router in jenkins plugin to expose permissions Signed-off-by: Brian Phillips <28457+brianphillips@users.noreply.github.com> --- plugins/jenkins-backend/package.json | 1 + plugins/jenkins-backend/src/service/router.ts | 7 +++++++ yarn.lock | 1 + 3 files changed, 9 insertions(+) diff --git a/plugins/jenkins-backend/package.json b/plugins/jenkins-backend/package.json index f45908c04e..e9630bfb45 100644 --- a/plugins/jenkins-backend/package.json +++ b/plugins/jenkins-backend/package.json @@ -32,6 +32,7 @@ "@backstage/plugin-auth-node": "workspace:^", "@backstage/plugin-jenkins-common": "workspace:^", "@backstage/plugin-permission-common": "workspace:^", + "@backstage/plugin-permission-node": "workspace:^", "@types/express": "^4.17.6", "express": "^4.17.1", "express-promise-router": "^4.1.0", diff --git a/plugins/jenkins-backend/src/service/router.ts b/plugins/jenkins-backend/src/service/router.ts index 484bfa273f..17cd4097e2 100644 --- a/plugins/jenkins-backend/src/service/router.ts +++ b/plugins/jenkins-backend/src/service/router.ts @@ -28,6 +28,8 @@ import { import { getBearerTokenFromAuthorizationHeader } from '@backstage/plugin-auth-node'; import { stringifyEntityRef } from '@backstage/catalog-model'; import { stringifyError } from '@backstage/errors'; +import { createPermissionIntegrationRouter } from '@backstage/plugin-permission-node'; +import { jenkinsExecutePermission } from '@backstage/plugin-jenkins-common'; /** @public */ export interface RouterOptions { @@ -58,6 +60,11 @@ export async function createRouter( const router = Router(); router.use(express.json()); + router.use( + createPermissionIntegrationRouter({ + permissions: [jenkinsExecutePermission], + }), + ); router.get( '/v1/entity/:namespace/:kind/:name/projects', diff --git a/yarn.lock b/yarn.lock index 7fbe9f51ff..a5cef527ed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7161,6 +7161,7 @@ __metadata: "@backstage/plugin-auth-node": "workspace:^" "@backstage/plugin-jenkins-common": "workspace:^" "@backstage/plugin-permission-common": "workspace:^" + "@backstage/plugin-permission-node": "workspace:^" "@types/express": ^4.17.6 "@types/jenkins": ^0.23.1 "@types/supertest": ^2.0.8