Merge pull request #17851 from brianphillips/expose-permission-routes-devtools

Expose devtools plugin permissions through the metadata endpoint
This commit is contained in:
Johan Haals
2023-05-24 13:07:40 +02:00
committed by GitHub
5 changed files with 32 additions and 0 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-devtools-backend': patch
---
Expose permissions through the metadata endpoint.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-devtools-common': patch
---
Export the list of permissions
@@ -21,6 +21,7 @@ import {
devToolsConfigReadPermission,
devToolsExternalDependenciesReadPermission,
devToolsInfoReadPermission,
devToolsPermissions,
} from '@backstage/plugin-devtools-common';
import { Config } from '@backstage/config';
@@ -31,6 +32,7 @@ import Router from 'express-promise-router';
import { errorHandler } from '@backstage/backend-common';
import express from 'express';
import { getBearerTokenFromAuthorizationHeader } from '@backstage/plugin-auth-node';
import { createPermissionIntegrationRouter } from '@backstage/plugin-permission-node';
/** @public */
export interface RouterOptions {
@@ -51,6 +53,11 @@ export async function createRouter(
const router = Router();
router.use(express.json());
router.use(
createPermissionIntegrationRouter({
permissions: devToolsPermissions,
}),
);
router.get('/health', (_req, res) => {
res.status(200).json({ status: 'ok' });
+3
View File
@@ -40,6 +40,9 @@ export type DevToolsInfo = {
// @public (undocumented)
export const devToolsInfoReadPermission: BasicPermission;
// @public
export const devToolsPermissions: BasicPermission[];
// @public (undocumented)
export type Endpoint = {
name: string;
@@ -47,3 +47,15 @@ export const devToolsExternalDependenciesReadPermission = createPermission({
name: 'devtools.external-dependencies',
attributes: { action: 'read' },
});
/**
* List of all Devtools permissions
*
* @public
*/
export const devToolsPermissions = [
devToolsAdministerPermission,
devToolsInfoReadPermission,
devToolsConfigReadPermission,
devToolsExternalDependenciesReadPermission,
];