diff --git a/docs/integrations/azure-blobStorage/discovery--old.md b/docs/integrations/azure-blobStorage/discovery--old.md deleted file mode 100644 index 5ff0ca5bdd..0000000000 --- a/docs/integrations/azure-blobStorage/discovery--old.md +++ /dev/null @@ -1,91 +0,0 @@ ---- -id: discovery--old -title: Azure Blob Storage Discovery -sidebar_label: Discovery -# prettier-ignore -description: Automatically discovering catalog entities from an Azure Blob Storage account ---- - -:::info -This documentation is written for [the new backend system](../../backend-system/index.md) which is the default since Backstage [version 1.24](../../releases/v1.24.0.md). If have migrated to the new backend system, you may want to read [its own article](./discovery.md) instead. Otherwise, [consider migrating](../../backend-system/building-backends/08-migrating.md)! -::: - -The Azure Blob Storage account integration has a special entity provider for discovering catalog -entities located in a storage account container. If you have a container that contains multiple -catalog files, and you want to automatically discover them, you can use this -provider. The provider will crawl your Blob Storage account container and register entities -matching the configured path. This can be useful as an alternative to static -locations or manually adding things to the catalog. - -To use the entity provider, you'll need an Azure Blob Storage account integration -[set up](locations.md) with `accountName` and either `aadCredential`, `sasToken`, or `accountKey` - -At production deployments, you likely manage these with the permissions attached -to your instance. - -In your configuration, you add a provider config per bucket: - -```yaml -# app-config.yaml - -catalog: - providers: - azureBlob: - providerId: - accountName: ${ACCOUNT_NAME} - containerName: ${CONTAINER_NAME} - schedule: # same options as in TaskScheduleDefinition - # supports cron, ISO duration, "human duration" as used in code - frequency: { minutes: 30 } - # supports ISO duration, "human duration" as used in code - timeout: { minutes: 3 } -``` - -For simple setups, you can omit the provider ID at the config -which has the same effect as using `default` for it. - -```yaml -# app-config.yaml - -catalog: - providers: - azureBlob: - accountName: ${ACCOUNT_NAME} - containerName: ${CONTAINER_NAME} - schedule: # same options as in TaskScheduleDefinition - # supports cron, ISO duration, "human duration" as used in code - frequency: { minutes: 30 } - # supports ISO duration, "human duration" as used in code - timeout: { minutes: 3 } -``` - -As this provider is not one of the default providers, you will first need to install -the Azure catalog plugin: - -```bash title="From your Backstage root directory" -yarn --cwd packages/backend add @backstage/plugin-catalog-backend-module-azure -``` - -Once you've done that, you'll also need to add the segment below to `packages/backend/src/plugins/catalog.ts`: - -```ts title="packages/backend/src/plugins/catalog.ts" -/* highlight-add-next-line */ -import { AzureDevOpsEntityProvider } from '@backstage/plugin-catalog-backend-module-azure'; - -const builder = await CatalogBuilder.create(env); -/** ... other processors and/or providers ... */ -/* highlight-add-start */ -builder.addEntityProvider( - AzureBlobStorageEntityProvider.fromConfig(env.config, { - logger: env.logger, - // optional: alternatively, use scheduler with schedule defined in app-config.yaml - schedule: env.scheduler.createScheduledTaskRunner({ - frequency: { minutes: 30 }, - timeout: { minutes: 3 }, - }), - // optional: alternatively, use schedule - scheduler: env.scheduler, - }), -); -/* highlight-add-end */ -``` diff --git a/docs/integrations/azure-blobStorage/discovery.md b/docs/integrations/azure-blobStorage/discovery.md index db6b7c49f1..32612daf75 100644 --- a/docs/integrations/azure-blobStorage/discovery.md +++ b/docs/integrations/azure-blobStorage/discovery.md @@ -7,7 +7,7 @@ description: Automatically discovering catalog entities from an Azure Blob Stora --- :::info -This documentation is written for [the new backend system](../../backend-system/index.md) which is the default since Backstage [version 1.24](../../releases/v1.24.0.md). If you are still on the old backend system, you may want to read [its own article](./discovery--old.md) instead, and [consider migrating](../../backend-system/building-backends/08-migrating.md)! +This documentation is written for [the new backend system](../../backend-system/index.md) which is the default since Backstage [version 1.24](../../releases/v1.24.0.md). ::: The Azure Blob Storage account integration has a special entity provider for discovering catalog diff --git a/microsite/sidebars.js b/microsite/sidebars.js index 871cec0a0f..ee429bc693 100644 --- a/microsite/sidebars.js +++ b/microsite/sidebars.js @@ -138,6 +138,14 @@ module.exports = { 'integrations/aws-s3/discovery', ], }, + { + type: 'category', + label: 'Azure Blob Storage', + items: [ + 'integrations/azure-blobStorage/locations', + 'integrations/azure-blobStorage/discovery', + ], + }, { type: 'category', label: 'Azure', diff --git a/packages/backend/package.json b/packages/backend/package.json index 6b0ca47f98..34de57574d 100644 --- a/packages/backend/package.json +++ b/packages/backend/package.json @@ -39,7 +39,6 @@ "@backstage/plugin-auth-backend-module-guest-provider": "workspace:^", "@backstage/plugin-auth-node": "workspace:^", "@backstage/plugin-catalog-backend": "workspace:^", - "@backstage/plugin-catalog-backend-module-azure": "workspace:^", "@backstage/plugin-catalog-backend-module-backstage-openapi": "workspace:^", "@backstage/plugin-catalog-backend-module-openapi": "workspace:^", "@backstage/plugin-catalog-backend-module-scaffolder-entity-model": "workspace:^", diff --git a/packages/backend/src/index.ts b/packages/backend/src/index.ts index 80537f1751..b9130d452f 100644 --- a/packages/backend/src/index.ts +++ b/packages/backend/src/index.ts @@ -56,6 +56,5 @@ backend.add(searchLoader); backend.add(import('@backstage/plugin-techdocs-backend')); backend.add(import('@backstage/plugin-signals-backend')); backend.add(import('@backstage/plugin-notifications-backend')); -backend.add(import('@backstage/plugin-catalog-backend-module-azure')); backend.start(); diff --git a/plugins/catalog-backend-module-azure/report.api.md b/plugins/catalog-backend-module-azure/report.api.md index 252513aa0a..60b7ee135b 100644 --- a/plugins/catalog-backend-module-azure/report.api.md +++ b/plugins/catalog-backend-module-azure/report.api.md @@ -15,25 +15,6 @@ import { SchedulerService } from '@backstage/backend-plugin-api'; import { SchedulerServiceTaskRunner } from '@backstage/backend-plugin-api'; import { ScmIntegrationRegistry } from '@backstage/integration'; -// @public -export class AzureBlobStorageEntityProvider implements EntityProvider { - // (undocumented) - connect(connection: EntityProviderConnection): Promise; - // (undocumented) - static fromConfig( - configRoot: Config, - options: { - logger: LoggerService; - schedule?: SchedulerServiceTaskRunner; - scheduler?: SchedulerService; - }, - ): AzureBlobStorageEntityProvider[]; - // (undocumented) - getProviderName(): string; - // (undocumented) - refresh(logger: LoggerService): Promise; -} - // @public export class AzureDevOpsDiscoveryProcessor implements CatalogProcessor { constructor(options: { diff --git a/plugins/catalog-backend-module-azure/src/index.ts b/plugins/catalog-backend-module-azure/src/index.ts index da1aaef30f..dbbdff67ce 100644 --- a/plugins/catalog-backend-module-azure/src/index.ts +++ b/plugins/catalog-backend-module-azure/src/index.ts @@ -23,4 +23,3 @@ export { default } from './module'; export { AzureDevOpsDiscoveryProcessor } from './processors'; export { AzureDevOpsEntityProvider } from './providers'; -export { AzureBlobStorageEntityProvider } from './providers';