Cleanup obsolete code

Signed-off-by: Tim Soslow <tsoslow@shutterstock.com>
This commit is contained in:
Tim Soslow
2023-05-09 21:28:14 -05:00
parent f6002cda1f
commit 717a49e68b
4 changed files with 4 additions and 45 deletions
-4
View File
@@ -8,8 +8,6 @@ import { CompoundEntityRef } from '@backstage/catalog-model';
import { Config } from '@backstage/config';
import express from 'express';
import { Logger } from 'winston';
import { PermissionAuthorizer } from '@backstage/plugin-permission-common';
import { PermissionEvaluator } from '@backstage/plugin-permission-common';
// @public (undocumented)
export function createRouter(options: RouterOptions): Promise<express.Router>;
@@ -85,7 +83,5 @@ export interface RouterOptions {
jenkinsInfoProvider: JenkinsInfoProvider;
// (undocumented)
logger: Logger;
// (undocumented)
permissions?: PermissionEvaluator | PermissionAuthorizer;
}
```
@@ -18,7 +18,6 @@ import { JenkinsApiImpl } from './jenkinsApi';
import jenkins from 'jenkins';
import { JenkinsInfo } from './jenkinsInfoProvider';
import { JenkinsBuild, JenkinsProject } from '../types';
import { AuthorizeResult } from '@backstage/plugin-permission-common';
import fetch, { Response } from 'node-fetch';
jest.mock('jenkins');
@@ -43,17 +42,8 @@ const jenkinsInfo: JenkinsInfo = {
jobFullName: 'example-jobName',
};
const fakePermissionApi = {
authorize: jest.fn().mockResolvedValue([
{
result: AuthorizeResult.ALLOW,
},
]),
authorizeConditional: jest.fn(),
};
describe('JenkinsApi', () => {
const jenkinsApi = new JenkinsApiImpl(fakePermissionApi);
const jenkinsApi = new JenkinsApiImpl();
const mockFetch = fetch as jest.MockedFunction<typeof fetch>;
describe('getProjects', () => {
@@ -23,12 +23,6 @@ import type {
JenkinsProject,
ScmDetails,
} from '../types';
import {
AuthorizeResult,
PermissionEvaluator,
} from '@backstage/plugin-permission-common';
import { jenkinsExecutePermission } from '@backstage/plugin-jenkins-common';
import { NotAllowedError } from '@backstage/errors';
import fetch, { HeaderInit } from 'node-fetch';
export class JenkinsApiImpl {
@@ -65,8 +59,6 @@ export class JenkinsApiImpl {
${JenkinsApiImpl.jobTreeSpec}
]{0,50}`;
constructor(private readonly permissionApi?: PermissionEvaluator) {}
/**
* Get a list of projects for the given JenkinsInfo.
* @see ../../../jenkins/src/api/JenkinsApi.ts#getProjects
+3 -22
View File
@@ -20,41 +20,22 @@ import Router from 'express-promise-router';
import { Logger } from 'winston';
import { JenkinsInfoProvider } from './jenkinsInfoProvider';
import { JenkinsApiImpl } from './jenkinsApi';
import {
PermissionAuthorizer,
PermissionEvaluator,
toPermissionEvaluator,
} from '@backstage/plugin-permission-common';
import { getBearerTokenFromAuthorizationHeader } from '@backstage/plugin-auth-node';
import { stringifyEntityRef } from '@backstage/catalog-model';
import { stringifyError } from '@backstage/errors';
/** @public */
export interface RouterOptions {
logger: Logger;
jenkinsInfoProvider: JenkinsInfoProvider;
permissions?: PermissionEvaluator | PermissionAuthorizer;
}
/** @public */
export async function createRouter(
options: RouterOptions,
): Promise<express.Router> {
const { jenkinsInfoProvider, permissions, logger } = options;
const { jenkinsInfoProvider } = options;
let permissionEvaluator: PermissionEvaluator | undefined;
if (permissions && 'authorizeConditional' in permissions) {
permissionEvaluator = permissions as PermissionEvaluator;
} else {
logger.warn(
'PermissionAuthorizer is deprecated. Please use an instance of PermissionEvaluator instead of PermissionAuthorizer in PluginEnvironment#permissions',
);
permissionEvaluator = permissions
? toPermissionEvaluator(permissions)
: undefined;
}
const jenkinsApi = new JenkinsApiImpl(permissionEvaluator);
const jenkinsApi = new JenkinsApiImpl();
const router = Router();
router.use(express.json());
@@ -145,7 +126,7 @@ export async function createRouter(
);
router.post(
'/v1/entity/:namespace/:kind/:name/job/:jobFullName/:buildNumber::rebuild',
'/v1/entity/:namespace/:kind/:name/job/:jobFullName/:buildNumber',
async (request, response) => {
const { namespace, kind, name, jobFullName, buildNumber } =
request.params;