diff --git a/.changeset/rare-states-pay.md b/.changeset/rare-states-pay.md new file mode 100644 index 0000000000..4f7c639af7 --- /dev/null +++ b/.changeset/rare-states-pay.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-catalog-backend-module-azure': patch +'@backstage/integration': patch +--- + +Adds config definitions for Azure Blob Storage. diff --git a/packages/integration/config.d.ts b/packages/integration/config.d.ts index 4955d0fac3..76af358ccb 100644 --- a/packages/integration/config.d.ts +++ b/packages/integration/config.d.ts @@ -71,6 +71,63 @@ export interface Config { commitSigningKey?: string; }>; + /** Integration configuration for Azure Blob Storage */ + azureBlobStorage?: Array<{ + /** + * The name of the Azure Storage Account, e.g., "mystorageaccount". + */ + accountName?: string; + + /** + * The primary or secondary key for the Azure Storage Account. + * Only required if connectionString or SAS token are not specified. + */ + accountKey?: string; + + /** + * A Shared Access Signature (SAS) token for limited access to resources. + */ + sasToken?: string; + + /** + * A full connection string for the Azure Storage Account. + * This includes the account name, key, and endpoint details. + */ + connectionString?: string; + + /** + * Optional endpoint suffix for custom domains or sovereign clouds. + * e.g., "core.windows.net" for public Azure or "core.usgovcloudapi.net" for US Government cloud. + */ + endpointSuffix?: string; + + /** + * The host of the target that this matches on, e.g., "blob.core.windows.net". + */ + host: string; + + endpoint?: string; + /** + * Optional credential to use for Azure Active Directory authentication. + */ + aadCredential?: { + /** + * The client ID of the Azure AD application. + */ + clientId: string; + + /** + * The tenant ID for Azure AD. + */ + tenantId: string; + + /** + * The client secret for the Azure AD application. + */ + clientSecret: string; + }; + }>; + /** * Integration configuration for Bitbucket * @deprecated replaced by bitbucketCloud and bitbucketServer diff --git a/plugins/catalog-backend-module-azure/config.d.ts b/plugins/catalog-backend-module-azure/config.d.ts index 50af529907..511588fb73 100644 --- a/plugins/catalog-backend-module-azure/config.d.ts +++ b/plugins/catalog-backend-module-azure/config.d.ts @@ -55,6 +55,24 @@ export interface Config { schedule?: SchedulerServiceTaskScheduleDefinitionConfig; }; }; + /** + * AzureBlobEntityProvider configuration + */ + azureBlob?: + | { + [name: string]: { + id: string; + containerName: string; + accountName: string; + schedule?: SchedulerServiceTaskScheduleDefinitionConfig; + }; + } + | { + id: string; + containerName: string; + accountName: string; + schedule?: SchedulerServiceTaskScheduleDefinitionConfig; + }; }; }; }