From 4cc3dccc26cdae0dc7f4d40b1b286459df236286 Mon Sep 17 00:00:00 2001 From: Kiss Miklos Date: Thu, 6 Oct 2022 18:14:52 +0200 Subject: [PATCH] deprecate ingestions types after moving to common Signed-off-by: Kiss Miklos --- .changeset/curvy-pets-wash.md | 8 +++ plugins/catalog-backend/api-report.md | 23 ++++++-- .../catalog-backend/src/ingestion/index.ts | 5 ++ .../catalog-backend/src/ingestion/types.ts | 53 +++++++++++++++++-- 4 files changed, 82 insertions(+), 7 deletions(-) diff --git a/.changeset/curvy-pets-wash.md b/.changeset/curvy-pets-wash.md index a0e9571b18..4c824f9ef4 100644 --- a/.changeset/curvy-pets-wash.md +++ b/.changeset/curvy-pets-wash.md @@ -3,3 +3,11 @@ --- Added a new method `addLocationAnalyzers` to the `CatalogBuilder`. With this you can add location analyzers to your catalog. These analyzers will be used by the /analyze-location endpoint to decide if the provided URL contains any catalog-info.yaml files already or not. + +Moved the following types from this package to `@backstage/plugin-catalog-backend`. + +- AnalyzeLocationResponse +- AnalyzeLocationRequest +- AnalyzeLocationExistingEntity +- AnalyzeLocationGenerateEntity +- AnalyzeLocationEntityField diff --git a/plugins/catalog-backend/api-report.md b/plugins/catalog-backend/api-report.md index f5922d51ab..d23c6f7519 100644 --- a/plugins/catalog-backend/api-report.md +++ b/plugins/catalog-backend/api-report.md @@ -5,9 +5,11 @@ ```ts /// -import { AnalyzeLocationExistingEntity } from '@backstage/plugin-catalog-common'; -import { AnalyzeLocationRequest } from '@backstage/plugin-catalog-common'; -import { AnalyzeLocationResponse } from '@backstage/plugin-catalog-common'; +import { AnalyzeLocationEntityField as AnalyzeLocationEntityField_2 } from '@backstage/plugin-catalog-common'; +import { AnalyzeLocationExistingEntity as AnalyzeLocationExistingEntity_2 } from '@backstage/plugin-catalog-common'; +import { AnalyzeLocationGenerateEntity as AnalyzeLocationGenerateEntity_2 } from '@backstage/plugin-catalog-common'; +import { AnalyzeLocationRequest as AnalyzeLocationRequest_2 } from '@backstage/plugin-catalog-common'; +import { AnalyzeLocationResponse as AnalyzeLocationResponse_2 } from '@backstage/plugin-catalog-common'; import { BackendFeature } from '@backstage/backend-plugin-api'; import { CatalogApi } from '@backstage/catalog-client'; import { CatalogEntityDocument } from '@backstage/plugin-catalog-common'; @@ -54,6 +56,21 @@ import { TokenManager } from '@backstage/backend-common'; import { UrlReader } from '@backstage/backend-common'; import { Validators } from '@backstage/catalog-model'; +// @public @deprecated +export type AnalyzeLocationEntityField = AnalyzeLocationEntityField_2; + +// @public @deprecated +export type AnalyzeLocationExistingEntity = AnalyzeLocationExistingEntity_2; + +// @public @deprecated +export type AnalyzeLocationGenerateEntity = AnalyzeLocationGenerateEntity_2; + +// @public @deprecated (undocumented) +export type AnalyzeLocationRequest = AnalyzeLocationRequest_2; + +// @public @deprecated (undocumented) +export type AnalyzeLocationResponse = AnalyzeLocationResponse_2; + // @public (undocumented) export type AnalyzeOptions = { url: string; diff --git a/plugins/catalog-backend/src/ingestion/index.ts b/plugins/catalog-backend/src/ingestion/index.ts index 0fc71f6785..0b00809043 100644 --- a/plugins/catalog-backend/src/ingestion/index.ts +++ b/plugins/catalog-backend/src/ingestion/index.ts @@ -15,6 +15,11 @@ */ export type { + AnalyzeLocationEntityField, + AnalyzeLocationExistingEntity, + AnalyzeLocationGenerateEntity, + AnalyzeLocationRequest, + AnalyzeLocationResponse, LocationAnalyzer, ScmLocationAnalyzer, AnalyzeOptions, diff --git a/plugins/catalog-backend/src/ingestion/types.ts b/plugins/catalog-backend/src/ingestion/types.ts index c6a480a7f5..467fe498b2 100644 --- a/plugins/catalog-backend/src/ingestion/types.ts +++ b/plugins/catalog-backend/src/ingestion/types.ts @@ -13,12 +13,58 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + import { - AnalyzeLocationResponse, - AnalyzeLocationRequest, - AnalyzeLocationExistingEntity, + AnalyzeLocationRequest as ExaltedAnalyzeLocationRequest, + AnalyzeLocationResponse as ExaltedAnalyzeLocationResponse, + AnalyzeLocationExistingEntity as ExaltedAnalyzeLocationExistingEntity, + AnalyzeLocationGenerateEntity as ExaltedAnalyzeLocationGenerateEntity, + AnalyzeLocationEntityField as ExaltedAnalyzeLocationEntityField, } from '@backstage/plugin-catalog-common'; +/** + * @public + * @deprecated use the same type from `@backstage/plugin-catalog-common` instead + */ +export type AnalyzeLocationRequest = ExaltedAnalyzeLocationRequest; +/** + * @public + * @deprecated use the same type from `@backstage/plugin-catalog-common` instead + */ +export type AnalyzeLocationResponse = ExaltedAnalyzeLocationResponse; + +/** + * If the folder pointed to already contained catalog info yaml files, they are + * read and emitted like this so that the frontend can inform the user that it + * located them and can make sure to register them as well if they weren't + * already + * @public + * @deprecated use the same type from `@backstage/plugin-catalog-common` instead + */ +export type AnalyzeLocationExistingEntity = + ExaltedAnalyzeLocationExistingEntity; +/** + * This is some form of representation of what the analyzer could deduce. + * We should probably have a chat about how this can best be conveyed to + * the frontend. It'll probably contain a (possibly incomplete) entity, plus + * enough info for the frontend to know what form data to show to the user + * for overriding/completing the info. + * @public + * @deprecated use the same type from `@backstage/plugin-catalog-common` instead + */ +export type AnalyzeLocationGenerateEntity = + ExaltedAnalyzeLocationGenerateEntity; + +/** + * + * This is where I get really vague. Something like this perhaps? Or it could be + * something like a json-schema that contains enough info for the frontend to + * be able to present a form and explanations + * @public + * @deprecated use the same type from `@backstage/plugin-catalog-common` instead + */ +export type AnalyzeLocationEntityField = ExaltedAnalyzeLocationEntityField; + /** @public */ export type LocationAnalyzer = { /** @@ -31,7 +77,6 @@ export type LocationAnalyzer = { location: AnalyzeLocationRequest, ): Promise; }; - /** @public */ export type AnalyzeOptions = { url: string;