catalog-node: promote extension points

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
Patrik Oldsberg
2026-01-27 00:24:44 +01:00
parent ba764ddc36
commit cfd8103e63
54 changed files with 256 additions and 118 deletions
@@ -660,7 +660,7 @@ depends on the appropriate extension point and interacts with it.
```ts title="packages/backend/src/index.ts"
/* highlight-add-start */
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node';
import { createBackendModule } from '@backstage/backend-plugin-api';
/* highlight-add-end */
@@ -166,7 +166,7 @@ This is an example of relaxing the format rules of the `metadata.name` field:
```ts
import { createBackend } from '@backstage/backend-defaults';
import { createBackendModule } from '@backstage/backend-plugin-api';
import { catalogModelExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogModelExtensionPoint } from '@backstage/plugin-catalog-node';
const myCatalogCustomizations = createBackendModule({
pluginId: 'catalog',
@@ -166,7 +166,7 @@ This is an example of relaxing the format rules of the `metadata.name` field:
```ts
import { createBackend } from '@backstage/backend-defaults';
import { createBackendModule } from '@backstage/backend-plugin-api';
import { catalogModelExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogModelExtensionPoint } from '@backstage/plugin-catalog-node';
const myCatalogCustomizations = createBackendModule({
pluginId: 'catalog',
@@ -596,7 +596,7 @@ import {
coreServices,
createBackendModule,
} from '@backstage/backend-plugin-api';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node';
/* highlight-add-next-line */
import { FoobarEntitiesProcessor } from './providers';
@@ -294,7 +294,7 @@ import {
coreServices,
createBackendModule,
} from '@backstage/backend-plugin-api';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node';
import { FrobsProvider } from './path/to/class';
export const catalogModuleFrobsProvider = createBackendModule({
@@ -737,7 +737,7 @@ import {
coreServices,
createBackendModule,
} from '@backstage/backend-plugin-api';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node';
import { SystemXReaderProcessor } from '../path/to/class';
export const catalogModuleSystemXReaderProcessor = createBackendModule({
@@ -998,7 +998,7 @@ import {
coreServices,
createBackendModule,
} from '@backstage/backend-plugin-api';
import { catalogModelExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogModelExtensionPoint } from '@backstage/plugin-catalog-node';
import { customEntityDataParser } from '../lib/customEntityDataParser';
export const catalogModuleCustomDataParser = createBackendModule({
+1 -1
View File
@@ -285,7 +285,7 @@ import {
coreServices,
createBackendModule,
} from '@backstage/backend-plugin-api';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogProcessingExtensionPoint } from '@backstage/plugin-catalog-node';
import { eventsServiceRef } from '@backstage/plugin-events-node';
import {
GitlabOrgDiscoveryEntityProvider,
+1 -1
View File
@@ -158,7 +158,7 @@ To install custom rules in a plugin, we need to use the [`PermissionsRegistrySer
```typescript title="packages/backend/src/modules/catalogPermissionRules.ts"
import { createBackendModule } from '@backstage/backend-plugin-api';
import { catalogPermissionExtensionPoint } from '@backstage/plugin-catalog-node/alpha';
import { catalogPermissionExtensionPoint } from '@backstage/plugin-catalog-node';
import { isInSystemRule } from './permissionsPolicyExtension';
export default createBackendModule({
+2 -2
View File
@@ -663,7 +663,7 @@
import {
catalogProcessingExtensionPoint,
catalogModelExtensionPoint,
} from '@backstage/plugin-catalog-node/alpha';
} from '@backstage/plugin-catalog-node';
import {myPolicy} from './my-policy';
export const catalogModulePolicyProvider = createBackendModule({
@@ -814,7 +814,7 @@
import {
catalogProcessingExtensionPoint,
catalogModelExtensionPoint,
} from '@backstage/plugin-catalog-node/alpha';
} from '@backstage/plugin-catalog-node';
import {myPolicy} from './my-policy';
export const catalogModulePolicyProvider = createBackendModule({
+1 -1
View File
@@ -58,7 +58,7 @@ We encourage you to migrate existing tests to use this new utility, in order to
### New backend plugin extension points
The `catalogModelExtensionPoint` from `@backstage/plugin-catalog-node/alpha` can now be used to replace the default entity data parser and field validation rules in the new backend system.
The `catalogModelExtensionPoint` from `@backstage/plugin-catalog-node` can now be used to replace the default entity data parser and field validation rules in the new backend system.
The `techdocsGeneratorExtensionPoint` from `@backstage/plugin-techdocs-node` can now be used to set a custom TechDocs generator.