feat: support array as arg for CatalogBuilder.addEntityProvider and others
Allows to use e.g. ``` builder.addEntityProvider(getArrayOfProviders()); ``` instead of ``` builder.addEntityProvider(...getArrayOfProviders()); ``` Signed-off-by: Patrick Jungermann <Patrick.Jungermann@gmail.com>
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
---
|
||||
'@backstage/plugin-catalog-backend': minor
|
||||
---
|
||||
|
||||
Allow array as non-spread arguments at the `CatalogBuilder`.
|
||||
|
||||
```typescript
|
||||
builder.addEntityProvider(...getArrayOfProviders());
|
||||
```
|
||||
|
||||
can be simplified to
|
||||
|
||||
```typescript
|
||||
builder.addEntityProvider(getArrayOfProviders());
|
||||
```
|
||||
@@ -67,7 +67,7 @@ import { AwsS3EntityProvider } from '@backstage/plugin-catalog-backend-module-aw
|
||||
const builder = await CatalogBuilder.create(env);
|
||||
/** ... other processors and/or providers ... */
|
||||
builder.addEntityProvider(
|
||||
...AwsS3EntityProvider.fromConfig(env.config, {
|
||||
AwsS3EntityProvider.fromConfig(env.config, {
|
||||
logger: env.logger,
|
||||
schedule: env.scheduler.createScheduledTaskRunner({
|
||||
frequency: { minutes: 30 },
|
||||
|
||||
@@ -30,7 +30,7 @@ import { Duration } from 'luxon';
|
||||
const builder = await CatalogBuilder.create(env);
|
||||
/** ... other processors and/or providers ... */
|
||||
builder.addEntityProvider(
|
||||
...GerritEntityProvider.fromConfig(env.config, {
|
||||
GerritEntityProvider.fromConfig(env.config, {
|
||||
logger: env.logger,
|
||||
schedule: env.scheduler.createScheduledTaskRunner({
|
||||
frequency: { minutes: 30 },
|
||||
|
||||
@@ -110,11 +110,21 @@ export class BuiltinKindsEntityProcessor implements CatalogProcessor {
|
||||
|
||||
// @public
|
||||
export class CatalogBuilder {
|
||||
addEntityPolicy(...policies: EntityPolicy[]): CatalogBuilder;
|
||||
addEntityProvider(...providers: EntityProvider[]): CatalogBuilder;
|
||||
addEntityPolicy(
|
||||
...policies: Array<EntityPolicy | Array<EntityPolicy>>
|
||||
): CatalogBuilder;
|
||||
addEntityProvider(
|
||||
...providers: Array<EntityProvider | Array<EntityProvider>>
|
||||
): CatalogBuilder;
|
||||
// @alpha
|
||||
addPermissionRules(...permissionRules: CatalogPermissionRule[]): void;
|
||||
addProcessor(...processors: CatalogProcessor[]): CatalogBuilder;
|
||||
addPermissionRules(
|
||||
...permissionRules: Array<
|
||||
CatalogPermissionRule | Array<CatalogPermissionRule>
|
||||
>
|
||||
): void;
|
||||
addProcessor(
|
||||
...processors: Array<CatalogProcessor | Array<CatalogProcessor>>
|
||||
): CatalogBuilder;
|
||||
build(): Promise<{
|
||||
processingEngine: CatalogProcessingEngine;
|
||||
router: Router;
|
||||
|
||||
@@ -172,8 +172,10 @@ export class CatalogBuilder {
|
||||
*
|
||||
* @param policies - One or more policies
|
||||
*/
|
||||
addEntityPolicy(...policies: EntityPolicy[]): CatalogBuilder {
|
||||
this.entityPolicies.push(...policies);
|
||||
addEntityPolicy(
|
||||
...policies: Array<EntityPolicy | Array<EntityPolicy>>
|
||||
): CatalogBuilder {
|
||||
this.entityPolicies.push(...policies.flat());
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -268,8 +270,10 @@ export class CatalogBuilder {
|
||||
*
|
||||
* @param providers - One or more entity providers
|
||||
*/
|
||||
addEntityProvider(...providers: EntityProvider[]): CatalogBuilder {
|
||||
this.entityProviders.push(...providers);
|
||||
addEntityProvider(
|
||||
...providers: Array<EntityProvider | Array<EntityProvider>>
|
||||
): CatalogBuilder {
|
||||
this.entityProviders.push(...providers.flat());
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -279,8 +283,10 @@ export class CatalogBuilder {
|
||||
*
|
||||
* @param processors - One or more processors
|
||||
*/
|
||||
addProcessor(...processors: CatalogProcessor[]): CatalogBuilder {
|
||||
this.processors.push(...processors);
|
||||
addProcessor(
|
||||
...processors: Array<CatalogProcessor | Array<CatalogProcessor>>
|
||||
): CatalogBuilder {
|
||||
this.processors.push(...processors.flat());
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -341,8 +347,12 @@ export class CatalogBuilder {
|
||||
* @param permissionRules - Additional permission rules
|
||||
* @alpha
|
||||
*/
|
||||
addPermissionRules(...permissionRules: CatalogPermissionRule[]) {
|
||||
this.permissionRules.push(...permissionRules);
|
||||
addPermissionRules(
|
||||
...permissionRules: Array<
|
||||
CatalogPermissionRule | Array<CatalogPermissionRule>
|
||||
>
|
||||
) {
|
||||
this.permissionRules.push(...permissionRules.flat());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user