diff --git a/.changeset/proud-toys-return.md b/.changeset/proud-toys-return.md index c2a713a5c5..f93e6ef4a8 100644 --- a/.changeset/proud-toys-return.md +++ b/.changeset/proud-toys-return.md @@ -1,5 +1,5 @@ --- -'@backstage/catalog-model': patch +'@backstage/catalog-model': minor --- -Introduced DefaultParentEntityPolicy to set a default group entity parent. +Introduced `GroupDefaultParentEntityPolicy` to set a default group entity parent. diff --git a/packages/catalog-model/api-report.md b/packages/catalog-model/api-report.md index eb8bf9af93..9b9136fc3c 100644 --- a/packages/catalog-model/api-report.md +++ b/packages/catalog-model/api-report.md @@ -108,13 +108,6 @@ export class DefaultNamespaceEntityPolicy implements EntityPolicy { enforce(entity: Entity): Promise; } -// @public -export class DefaultParentEntityPolicy implements EntityPolicy { - constructor(parent: string); - // (undocumented) - enforce(entity: Entity): Promise; -} - // @public interface DomainEntityV1alpha1 extends Entity { // (undocumented) @@ -237,6 +230,13 @@ export function getEntitySourceLocation(entity: Entity): { target: string; }; +// @public +export class GroupDefaultParentEntityPolicy implements EntityPolicy { + constructor(parentEntityRef: string); + // (undocumented) + enforce(entity: Entity): Promise; +} + // @public interface GroupEntityV1alpha1 extends Entity { // (undocumented) diff --git a/packages/catalog-model/src/entity/policies/DefaultParentEntityPolicy.test.ts b/packages/catalog-model/src/entity/policies/GroupDefaultParentEntityPolicy.test.ts similarity index 86% rename from packages/catalog-model/src/entity/policies/DefaultParentEntityPolicy.test.ts rename to packages/catalog-model/src/entity/policies/GroupDefaultParentEntityPolicy.test.ts index de7c332d17..d5eb6145c2 100644 --- a/packages/catalog-model/src/entity/policies/DefaultParentEntityPolicy.test.ts +++ b/packages/catalog-model/src/entity/policies/GroupDefaultParentEntityPolicy.test.ts @@ -15,11 +15,11 @@ */ import { UserEntity, GroupEntity } from '../../kinds'; -import { DefaultParentEntityPolicy } from './DefaultParentEntityPolicy'; +import { GroupDefaultParentEntityPolicy } from './GroupDefaultParentEntityPolicy'; -describe('DefaultParentEntityPolicy', () => { +describe('GroupDefaultParentEntityPolicy', () => { it('should ignore non-group entities', async () => { - const p = new DefaultParentEntityPolicy('name'); + const p = new GroupDefaultParentEntityPolicy('name'); const u: UserEntity = { apiVersion: 'backstage.io/v1alpha1', kind: 'User', @@ -36,7 +36,7 @@ describe('DefaultParentEntityPolicy', () => { }); it('should parent group entities', async () => { - const p = new DefaultParentEntityPolicy('name'); + const p = new GroupDefaultParentEntityPolicy('name'); const g: GroupEntity = { apiVersion: 'backstage.io/v1alpha1', kind: 'Group', @@ -53,7 +53,7 @@ describe('DefaultParentEntityPolicy', () => { }); it('should not replace existing parents', async () => { - const p = new DefaultParentEntityPolicy('namespace/name'); + const p = new GroupDefaultParentEntityPolicy('namespace/name'); const g: GroupEntity = { apiVersion: 'backstage.io/v1alpha1', kind: 'Group', diff --git a/packages/catalog-model/src/entity/policies/DefaultParentEntityPolicy.ts b/packages/catalog-model/src/entity/policies/GroupDefaultParentEntityPolicy.ts similarity index 96% rename from packages/catalog-model/src/entity/policies/DefaultParentEntityPolicy.ts rename to packages/catalog-model/src/entity/policies/GroupDefaultParentEntityPolicy.ts index b5a001b1f9..8eb0aef757 100644 --- a/packages/catalog-model/src/entity/policies/DefaultParentEntityPolicy.ts +++ b/packages/catalog-model/src/entity/policies/GroupDefaultParentEntityPolicy.ts @@ -28,7 +28,7 @@ import { parseEntityRef, stringifyEntityRef } from '../ref'; * * @public */ -export class DefaultParentEntityPolicy implements EntityPolicy { +export class GroupDefaultParentEntityPolicy implements EntityPolicy { private readonly parentRef: string; constructor(parentEntityRef: string) { diff --git a/packages/catalog-model/src/entity/policies/index.ts b/packages/catalog-model/src/entity/policies/index.ts index c35a214727..d5740c0955 100644 --- a/packages/catalog-model/src/entity/policies/index.ts +++ b/packages/catalog-model/src/entity/policies/index.ts @@ -15,7 +15,7 @@ */ export { DefaultNamespaceEntityPolicy } from './DefaultNamespaceEntityPolicy'; -export { DefaultParentEntityPolicy } from './DefaultParentEntityPolicy'; +export { GroupDefaultParentEntityPolicy } from './GroupDefaultParentEntityPolicy'; export { FieldFormatEntityPolicy } from './FieldFormatEntityPolicy'; export { NoForeignRootFieldsEntityPolicy } from './NoForeignRootFieldsEntityPolicy'; export { SchemaValidEntityPolicy } from './SchemaValidEntityPolicy';