Merge pull request #17845 from brianphillips/expose-permission-routes-jenkins
Use permission integration router in jenkins plugin to expose permissions
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-jenkins-common': patch
|
||||
---
|
||||
|
||||
Export list of permissions
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-jenkins-backend': patch
|
||||
---
|
||||
|
||||
Expose permissions through the metadata endpoint.
|
||||
@@ -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",
|
||||
|
||||
@@ -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 { jenkinsPermissions } 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: jenkinsPermissions,
|
||||
}),
|
||||
);
|
||||
|
||||
router.get(
|
||||
'/v1/entity/:namespace/:kind/:name/projects',
|
||||
|
||||
@@ -8,5 +8,8 @@ import { ResourcePermission } from '@backstage/plugin-permission-common';
|
||||
// @public
|
||||
export const jenkinsExecutePermission: ResourcePermission<'catalog-entity'>;
|
||||
|
||||
// @public
|
||||
export const jenkinsPermissions: ResourcePermission<'catalog-entity'>[];
|
||||
|
||||
// (No @packageDocumentation comment for this package)
|
||||
```
|
||||
|
||||
@@ -28,3 +28,10 @@ export const jenkinsExecutePermission = createPermission({
|
||||
},
|
||||
resourceType: RESOURCE_TYPE_CATALOG_ENTITY,
|
||||
});
|
||||
|
||||
/**
|
||||
* List of all Jenkins permissions
|
||||
*
|
||||
* @public
|
||||
*/
|
||||
export const jenkinsPermissions = [jenkinsExecutePermission];
|
||||
|
||||
@@ -7162,6 +7162,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
|
||||
|
||||
Reference in New Issue
Block a user