Merge pull request #25266 from backstage/camilaibs/nbs10-backend-commons-deprecations-cleanup

[NBS1.0] Deprecate legacy error and request logging handler types
This commit is contained in:
Camila Belo
2024-06-17 13:55:15 +02:00
committed by GitHub
27 changed files with 350 additions and 318 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-common': patch
---
Deprecate the legacy error and request logging handler types, respectively: `ErrorHandlerOptions` and `RequestLoggingHandlerFactory`.
+11 -11
View File
@@ -48,21 +48,21 @@ import { PluginMetadataService } from '@backstage/backend-plugin-api';
import { PushResult } from 'isomorphic-git';
import { Readable } from 'stream';
import { ReadCommitResult } from 'isomorphic-git';
import type { ReadTreeOptions as ReadTreeOptions_2 } from '@backstage/backend-plugin-api';
import type { ReadTreeResponse as ReadTreeResponse_2 } from '@backstage/backend-plugin-api';
import type { ReadTreeResponseDirOptions as ReadTreeResponseDirOptions_2 } from '@backstage/backend-plugin-api';
import type { ReadTreeResponseFile as ReadTreeResponseFile_2 } from '@backstage/backend-plugin-api';
import type { ReadUrlOptions as ReadUrlOptions_2 } from '@backstage/backend-plugin-api';
import type { ReadUrlResponse as ReadUrlResponse_2 } from '@backstage/backend-plugin-api';
import { ReadTreeOptions as ReadTreeOptions_2 } from '@backstage/backend-plugin-api';
import { ReadTreeResponse as ReadTreeResponse_2 } from '@backstage/backend-plugin-api';
import { ReadTreeResponseDirOptions as ReadTreeResponseDirOptions_2 } from '@backstage/backend-plugin-api';
import { ReadTreeResponseFile as ReadTreeResponseFile_2 } from '@backstage/backend-plugin-api';
import { ReadUrlOptions as ReadUrlOptions_2 } from '@backstage/backend-plugin-api';
import { ReadUrlResponse as ReadUrlResponse_2 } from '@backstage/backend-plugin-api';
import { RequestHandler } from 'express';
import { resolvePackagePath as resolvePackagePath_2 } from '@backstage/backend-plugin-api';
import { resolveSafeChildPath as resolveSafeChildPath_2 } from '@backstage/backend-plugin-api';
import { RootConfigService } from '@backstage/backend-plugin-api';
import { Router } from 'express';
import { SchedulerService } from '@backstage/backend-plugin-api';
import type { SearchOptions as SearchOptions_2 } from '@backstage/backend-plugin-api';
import type { SearchResponse as SearchResponse_2 } from '@backstage/backend-plugin-api';
import type { SearchResponseFile as SearchResponseFile_2 } from '@backstage/backend-plugin-api';
import { SearchOptions as SearchOptions_2 } from '@backstage/backend-plugin-api';
import { SearchResponse as SearchResponse_2 } from '@backstage/backend-plugin-api';
import { SearchResponseFile as SearchResponseFile_2 } from '@backstage/backend-plugin-api';
import { Server } from 'http';
import { ServiceRef } from '@backstage/backend-plugin-api';
import { TokenManagerService } from '@backstage/backend-plugin-api';
@@ -230,7 +230,7 @@ export function errorHandler(
options?: ErrorHandlerOptions,
): ErrorRequestHandler;
// @public
// @public @deprecated
export type ErrorHandlerOptions = {
showStackTraces?: boolean;
logger?: LoggerService;
@@ -538,7 +538,7 @@ export function redactWinstonLogLine(
// @public @deprecated
export function requestLoggingHandler(logger?: LoggerService): RequestHandler;
// @public
// @public @deprecated
export type RequestLoggingHandlerFactory = (
logger?: LoggerService,
) => RequestHandler;
@@ -43,7 +43,7 @@ import {
} from '@backstage/plugin-auth-node';
import { decodeJwt } from 'jose';
import { TokenManager } from '../deprecated';
import { PluginEndpointDiscovery } from '../discovery';
import { PluginEndpointDiscovery } from '../deprecated';
import { JsonObject } from '@backstage/types';
class AuthCompat implements AuthService {
+1 -1
View File
@@ -22,7 +22,7 @@ import {
import { LoggerService } from '@backstage/backend-plugin-api';
import { AppConfig, Config } from '@backstage/config';
import { LoadConfigOptionsRemote } from '@backstage/config-loader';
import { setRootLoggerRedactionList } from './logging/createRootLogger';
import { setRootLoggerRedactionList } from './deprecated/logging/createRootLogger';
/**
* Load configuration for a Backend.
@@ -14,15 +14,59 @@
* limitations under the License.
*/
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { HostDiscovery as _HostDiscovery } from '../../../backend-defaults/src/entrypoints/discovery/HostDiscovery';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { CacheManager as _CacheManager } from '../../../backend-defaults/src/entrypoints/cache/CacheManager';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import {
type PluginCacheManager as _PluginCacheManager,
type CacheManagerOptions as _CacheManagerOptions,
} from '../../../backend-defaults/src/entrypoints/cache/types';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { AzureUrlReader as _AzureUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/AzureUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { BitbucketCloudUrlReader as _BitbucketCloudUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/BitbucketCloudUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { BitbucketUrlReader as _BitbucketUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/BitbucketUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { BitbucketServerUrlReader as _BitbucketServerUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/BitbucketServerUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GerritUrlReader as _GerritUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GerritUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GithubUrlReader as _GithubUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GithubUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GitlabUrlReader as _GitlabUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GitlabUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GiteaUrlReader as _GiteaUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GiteaUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { HarnessUrlReader as _HarnessUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/HarnessUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { AwsS3UrlReader as _AwsS3UrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/AwsS3UrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { FetchUrlReader as _FetchUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/FetchUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { UrlReaders as _UrlReaders } from '../../../backend-defaults/src/entrypoints/urlReader/lib/UrlReaders';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { ReadUrlResponseFactory as _ReadUrlResponseFactory } from '../../../backend-defaults/src/entrypoints/urlReader/lib/ReadUrlResponseFactory';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import type { UrlReadersOptions as _UrlReadersOptions } from '../../../backend-defaults/src/entrypoints/urlReader/lib/UrlReaders';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import type { FromReadableArrayOptions as _FromReadableArrayOptions } from '../../../backend-defaults/src/entrypoints/urlReader/lib/types';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import type {
ReaderFactory as _ReaderFactory,
ReadTreeResponseFactory as _ReadTreeResponseFactory,
ReadTreeResponseFactoryOptions as _ReadTreeResponseFactoryOptions,
ReadUrlResponseFactoryFromStreamOptions as _ReadUrlResponseFactoryFromStreamOptions,
UrlReaderPredicateTuple as _UrlReaderPredicateTuple,
} from '../../../backend-defaults/src/entrypoints/urlReader/lib/types';
import {
DiscoveryService,
CacheService,
CacheServiceOptions,
CacheServiceSetOptions,
@@ -30,10 +74,55 @@ import {
resolvePackagePath as _resolvePackagePath,
resolveSafeChildPath as _resolveSafeChildPath,
isChildPath as _isChildPath,
ReadTreeOptions as _ReadTreeOptions,
ReadTreeResponse as _ReadTreeResponse,
ReadTreeResponseFile as _ReadTreeResponseFile,
ReadTreeResponseDirOptions as _ReadTreeResponseDirOptions,
ReadUrlOptions as _ReadUrlOptions,
ReadUrlResponse as _ReadUrlResponse,
SearchOptions as _SearchOptions,
SearchResponse as _SearchResponse,
SearchResponseFile as _SearchResponseFile,
UrlReaderService as _UrlReaderService,
} from '@backstage/backend-plugin-api';
export * from './scm';
export * from './tokens';
export * from './logging';
export * from './service';
export * from './middleware';
/**
* @public
* @deprecated Use `DiscoveryService` from `@backstage/backend-plugin-api` instead
*/
export type PluginEndpointDiscovery = DiscoveryService;
/**
* HostDiscovery is a basic PluginEndpointDiscovery implementation
* that can handle plugins that are hosted in a single or multiple deployments.
*
* The deployment may be scaled horizontally, as long as the external URL
* is the same for all instances. However, internal URLs will always be
* resolved to the same host, so there won't be any balancing of internal traffic.
*
* @public
* @deprecated Please import from `@backstage/backend-defaults/discovery` instead.
*/
export const HostDiscovery = _HostDiscovery;
/**
* SingleHostDiscovery is a basic PluginEndpointDiscovery implementation
* that assumes that all plugins are hosted in a single deployment.
*
* The deployment may be scaled horizontally, as long as the external URL
* is the same for all instances. However, internal URLs will always be
* resolved to the same host, so there won't be any balancing of internal traffic.
*
* @public
* @deprecated Use `HostDiscovery` from `@backstage/backend-defaults/discovery` instead
*/
export const SingleHostDiscovery = _HostDiscovery;
/**
* @public
@@ -98,3 +187,184 @@ export const resolveSafeChildPath = _resolveSafeChildPath;
* Please use the `isChildPath` function from the `@backstage/cli-common` package instead.
*/
export const isChildPath = _isChildPath;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const AzureUrlReader = _AzureUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const BitbucketCloudUrlReader = _BitbucketCloudUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const BitbucketUrlReader = _BitbucketUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const BitbucketServerUrlReader = _BitbucketServerUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GerritUrlReader = _GerritUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GithubUrlReader = _GithubUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GitlabUrlReader = _GitlabUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GiteaUrlReader = _GiteaUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const HarnessUrlReader = _HarnessUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const AwsS3UrlReader = _AwsS3UrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const FetchUrlReader = _FetchUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const UrlReaders = _UrlReaders;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const ReadUrlResponseFactory = _ReadUrlResponseFactory;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type UrlReadersOptions = _UrlReadersOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type FromReadableArrayOptions = _FromReadableArrayOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReaderFactory = _ReaderFactory;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReadTreeResponseFactory = _ReadTreeResponseFactory;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReadTreeResponseFactoryOptions = _ReadTreeResponseFactoryOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReadUrlResponseFactoryFromStreamOptions =
_ReadUrlResponseFactoryFromStreamOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type UrlReaderPredicateTuple = _UrlReaderPredicateTuple;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeOptions = _ReadTreeOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponse` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponse = _ReadTreeResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseFile` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponseFile = _ReadTreeResponseFile;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseDirOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponseDirOptions = _ReadTreeResponseDirOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadUrlOptions = _ReadUrlOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlResponse` from `@backstage/backend-plugin-api` instead
*/
export type ReadUrlResponse = _ReadUrlResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchOptions` from `@backstage/backend-plugin-api` instead
*/
export type SearchOptions = _SearchOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponse` from `@backstage/backend-plugin-api` instead
*/
export type SearchResponse = _SearchResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponseFile` from `@backstage/backend-plugin-api` instead
*/
export type SearchResponseFile = _SearchResponseFile;
/**
* @public
* @deprecated Use `UrlReaderService` from `@backstage/backend-plugin-api` instead
*/
export type UrlReader = _UrlReaderService;
@@ -15,12 +15,12 @@
*/
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { WinstonLogger } from '../../../backend-app-api/src/logging/WinstonLogger';
import { WinstonLogger } from '../../../../backend-app-api/src/logging/WinstonLogger';
import { merge } from 'lodash';
import * as winston from 'winston';
import { format, LoggerOptions } from 'winston';
import { setRootLogger } from './globalLoggers';
import { TransformableInfo } from 'logform';
import { setRootLogger } from './globalLoggers';
const getRedacter = (() => {
let redacter: ReturnType<typeof WinstonLogger.redacter> | undefined =
@@ -0,0 +1,22 @@
/*
* Copyright 2020 The Backstage Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export { getRootLogger, getVoidLogger, setRootLogger } from './globalLoggers';
export {
createRootLogger,
redactWinstonLogLine,
coloredFormat,
} from './createRootLogger';
@@ -14,6 +14,10 @@
* limitations under the License.
*/
import express from 'express';
import { STATUS_CODES } from 'http';
import createError from 'http-errors';
import request from 'supertest';
import {
AuthenticationError,
ConflictError,
@@ -23,11 +27,7 @@ import {
NotModifiedError,
ResponseError,
} from '@backstage/errors';
import express from 'express';
import createError from 'http-errors';
import request from 'supertest';
import { errorHandler } from './errorHandler';
import { STATUS_CODES } from 'http';
describe('errorHandler', () => {
it('gives default code and message', async () => {
@@ -16,15 +16,16 @@
import { ErrorRequestHandler } from 'express';
import { LoggerService } from '@backstage/backend-plugin-api';
import { getRootLogger } from '../logging';
import { ConfigReader } from '@backstage/config';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { MiddlewareFactory } from '../../../backend-app-api/src/http/MiddlewareFactory';
import { MiddlewareFactory } from '../../../../backend-app-api/src/http/MiddlewareFactory';
import { getRootLogger } from '../logging';
/**
* Options passed to the {@link errorHandler} middleware.
*
* @public
* @deprecated This type is being deprecated along with the {@link @backstage/backend-common#errorHandler} function.
*/
export type ErrorHandlerOptions = {
/**
@@ -14,8 +14,6 @@
* limitations under the License.
*/
export {
HostDiscovery,
SingleHostDiscovery,
type PluginEndpointDiscovery,
} from './HostDiscovery';
export * from './errorHandler';
export * from './notFoundHandler';
export * from './requestLoggingHandler';
@@ -15,7 +15,7 @@
*/
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { MiddlewareFactory } from '../../../backend-app-api/src/http/MiddlewareFactory';
import { MiddlewareFactory } from '../../../../backend-app-api/src/http/MiddlewareFactory';
import { ConfigReader } from '@backstage/config';
import { RequestHandler } from 'express';
import { getRootLogger } from '../logging';
@@ -15,11 +15,11 @@
*/
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { MiddlewareFactory } from '../../../backend-app-api/src/http/MiddlewareFactory';
import { MiddlewareFactory } from '../../../../backend-app-api/src/http/MiddlewareFactory';
import { RequestHandler } from 'express';
import { ConfigReader } from '@backstage/config';
import { LoggerService } from '@backstage/backend-plugin-api';
import { getRootLogger } from '../logging';
import { ConfigReader } from '@backstage/config';
/**
* Logs incoming requests.
@@ -27,7 +27,7 @@ import { ConfigReader } from '@backstage/config';
* @public
* @param logger - An optional logger to use. If not specified, the root logger will be used.
* @returns An Express request handler
* @deprecated @deprecated Use {@link @backstage/backend-app-api#MiddlewareFactory.create.logging} instead
* @deprecated Use {@link @backstage/backend-app-api#MiddlewareFactory.create.logging} instead
*/
export function requestLoggingHandler(logger?: LoggerService): RequestHandler {
return MiddlewareFactory.create({
@@ -0,0 +1,18 @@
/*
* Copyright 2020 The Backstage Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export { createServiceBuilder } from './createServiceBuilder';
export type { ServiceBuilder, RequestLoggingHandlerFactory } from './types';
@@ -22,7 +22,7 @@ import helmet, { HelmetOptions } from 'helmet';
import { ContentSecurityPolicyOptions } from 'helmet/dist/types/middlewares/content-security-policy';
import * as http from 'http';
import { LoggerService } from '@backstage/backend-plugin-api';
import { useHotCleanup } from '../../hot';
import { useHotCleanup } from '../../../hot';
import { getRootLogger } from '../../logging';
import {
errorHandler as defaultErrorHandler,
@@ -37,7 +37,7 @@ import {
readHttpServerOptions,
HttpServerOptions,
createHttpServer,
} from '../../../../backend-app-api/src/http';
} from '../../../../../backend-app-api/src/http';
export type CspOptions = Record<string, string[]>;
@@ -128,6 +128,7 @@ export type ServiceBuilder = {
* A factory for request loggers.
*
* @public
* @deprecated This type is being deprecated along with the {@link @backstage/backend-common#createServiceBuilder} function.
*/
export type RequestLoggingHandlerFactory = (
logger?: LoggerService,
@@ -1,51 +0,0 @@
/*
* Copyright 2020 The Backstage Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { HostDiscovery as _HostDiscovery } from '../../../backend-defaults/src/entrypoints/discovery/HostDiscovery';
import { DiscoveryService } from '@backstage/backend-plugin-api';
/**
* @public
* @deprecated Use `DiscoveryService` from `@backstage/backend-plugin-api` instead
*/
export type PluginEndpointDiscovery = DiscoveryService;
/**
* HostDiscovery is a basic PluginEndpointDiscovery implementation
* that can handle plugins that are hosted in a single or multiple deployments.
*
* The deployment may be scaled horizontally, as long as the external URL
* is the same for all instances. However, internal URLs will always be
* resolved to the same host, so there won't be any balancing of internal traffic.
*
* @public
* @deprecated Please import from `@backstage/backend-defaults/discovery` instead.
*/
export const HostDiscovery = _HostDiscovery;
/**
* SingleHostDiscovery is a basic PluginEndpointDiscovery implementation
* that assumes that all plugins are hosted in a single deployment.
*
* The deployment may be scaled horizontally, as long as the external URL
* is the same for all instances. However, internal URLs will always be
* resolved to the same host, so there won't be any balancing of internal traffic.
*
* @public
* @deprecated Use `HostDiscovery` from `@backstage/backend-defaults/discovery` instead
*/
export const SingleHostDiscovery = _HostDiscovery;
+1 -3
View File
@@ -23,14 +23,12 @@
export { legacyPlugin, makeLegacyPlugin } from './legacy';
export type { LegacyCreateRouter } from './legacy';
export { loadBackendConfig } from './config';
export * from './deprecated';
export * from './auth';
export * from './cache';
export * from './deprecated';
export * from './database';
export * from './discovery';
export * from './hot';
export * from './logging';
export * from './middleware';
export * from './reading';
export * from './service';
export * from './util';
@@ -14,10 +14,4 @@
* limitations under the License.
*/
export { getRootLogger, getVoidLogger, setRootLogger } from './globalLoggers';
export {
createRootLogger,
redactWinstonLogLine,
coloredFormat,
} from './createRootLogger';
export { loggerToWinstonLogger } from './loggerToWinstonLogger';
@@ -14,7 +14,4 @@
* limitations under the License.
*/
export * from './errorHandler';
export * from './notFoundHandler';
export * from './requestLoggingHandler';
export * from './statusCheckHandler';
@@ -1,220 +0,0 @@
/*
* Copyright 2020 The Backstage Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { AzureUrlReader as _AzureUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/AzureUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { BitbucketCloudUrlReader as _BitbucketCloudUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/BitbucketCloudUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { BitbucketUrlReader as _BitbucketUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/BitbucketUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { BitbucketServerUrlReader as _BitbucketServerUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/BitbucketServerUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GerritUrlReader as _GerritUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GerritUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GithubUrlReader as _GithubUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GithubUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GitlabUrlReader as _GitlabUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GitlabUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { GiteaUrlReader as _GiteaUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/GiteaUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { HarnessUrlReader as _HarnessUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/HarnessUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { AwsS3UrlReader as _AwsS3UrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/AwsS3UrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { FetchUrlReader as _FetchUrlReader } from '../../../backend-defaults/src/entrypoints/urlReader/lib/FetchUrlReader';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { UrlReaders as _UrlReaders } from '../../../backend-defaults/src/entrypoints/urlReader/lib/UrlReaders';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import { ReadUrlResponseFactory as _ReadUrlResponseFactory } from '../../../backend-defaults/src/entrypoints/urlReader/lib/ReadUrlResponseFactory';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import type { UrlReadersOptions as _UrlReadersOptions } from '../../../backend-defaults/src/entrypoints/urlReader/lib/UrlReaders';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import type { FromReadableArrayOptions as _FromReadableArrayOptions } from '../../../backend-defaults/src/entrypoints/urlReader/lib/types';
// eslint-disable-next-line @backstage/no-relative-monorepo-imports
import type {
ReaderFactory as _ReaderFactory,
ReadTreeResponseFactory as _ReadTreeResponseFactory,
ReadTreeResponseFactoryOptions as _ReadTreeResponseFactoryOptions,
ReadUrlResponseFactoryFromStreamOptions as _ReadUrlResponseFactoryFromStreamOptions,
UrlReaderPredicateTuple as _UrlReaderPredicateTuple,
} from '../../../backend-defaults/src/entrypoints/urlReader/lib/types';
import type {
ReadTreeOptions as _ReadTreeOptions,
ReadTreeResponse as _ReadTreeResponse,
ReadTreeResponseFile as _ReadTreeResponseFile,
ReadTreeResponseDirOptions as _ReadTreeResponseDirOptions,
ReadUrlOptions as _ReadUrlOptions,
ReadUrlResponse as _ReadUrlResponse,
SearchOptions as _SearchOptions,
SearchResponse as _SearchResponse,
SearchResponseFile as _SearchResponseFile,
UrlReaderService as _UrlReaderService,
} from '@backstage/backend-plugin-api';
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const AzureUrlReader = _AzureUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const BitbucketCloudUrlReader = _BitbucketCloudUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const BitbucketUrlReader = _BitbucketUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const BitbucketServerUrlReader = _BitbucketServerUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GerritUrlReader = _GerritUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GithubUrlReader = _GithubUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GitlabUrlReader = _GitlabUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const GiteaUrlReader = _GiteaUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const HarnessUrlReader = _HarnessUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const AwsS3UrlReader = _AwsS3UrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const FetchUrlReader = _FetchUrlReader;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const UrlReaders = _UrlReaders;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export const ReadUrlResponseFactory = _ReadUrlResponseFactory;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type UrlReadersOptions = _UrlReadersOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type FromReadableArrayOptions = _FromReadableArrayOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReaderFactory = _ReaderFactory;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReadTreeResponseFactory = _ReadTreeResponseFactory;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReadTreeResponseFactoryOptions = _ReadTreeResponseFactoryOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type ReadUrlResponseFactoryFromStreamOptions =
_ReadUrlResponseFactoryFromStreamOptions;
/**
* @public
* @deprecated Import from `@backstage/backend-defaults/urlReader` instead
*/
export type UrlReaderPredicateTuple = _UrlReaderPredicateTuple;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeOptions = _ReadTreeOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponse` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponse = _ReadTreeResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseFile` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponseFile = _ReadTreeResponseFile;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseDirOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponseDirOptions = _ReadTreeResponseDirOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadUrlOptions = _ReadUrlOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlResponse` from `@backstage/backend-plugin-api` instead
*/
export type ReadUrlResponse = _ReadUrlResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchOptions` from `@backstage/backend-plugin-api` instead
*/
export type SearchOptions = _SearchOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponse` from `@backstage/backend-plugin-api` instead
*/
export type SearchResponse = _SearchResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponseFile` from `@backstage/backend-plugin-api` instead
*/
export type SearchResponseFile = _SearchResponseFile;
/**
* @public
* @deprecated Use `UrlReaderService` from `@backstage/backend-plugin-api` instead
*/
export type UrlReader = _UrlReaderService;
@@ -17,7 +17,8 @@
import { LoggerService } from '@backstage/backend-plugin-api';
import Router from 'express-promise-router';
import express from 'express';
import { errorHandler, statusCheckHandler, StatusCheck } from '../middleware';
import { errorHandler } from '../deprecated';
import { statusCheckHandler, StatusCheck } from '../middleware';
/**
* Creates a default status checking router, that you can add to your express
@@ -14,6 +14,4 @@
* limitations under the License.
*/
export { createServiceBuilder } from './createServiceBuilder';
export { createStatusCheckRouter } from './createStatusCheckRouter';
export type { ServiceBuilder, RequestLoggingHandlerFactory } from './types';