#2572·warpgate

feat: Azure Blob Storage backend for session recordings

Author: mrmmCreated Sep 11, 2026Updated Sep 11, 2026

S3 recordings storage (#2205) covers AWS deployments. Azure deployments have no equivalent — recordings stay on local disk only.

Proposal: add an Azure variant to RecordingsStorageConfig backed by a new warpgate-azure crate alongside warpgate-aws.

The mapping is clean:

  • Put Block / Put Block List → S3 multipart upload
  • SAS URL → presign_get
  • DefaultAzureCredential (Managed Identity) → AutoCredentials
  • Connection string / account key → StaticCredentials

No DB migration needed — recordings_storage is already a serde JSON column. azure_storage_blob hit 1.0 GA in May, now 1.1.0 (2026-09-08). azure_identity 1.0 GA.

Unlike warpgate-aws (needed by 9 crates for IAM auth), this is storage-only so the new crate would be a dep of warpgate-core and warpgate-admin only.

Two questions before I write it:

  1. Enum variant mirroring S3, or a trait first? The enum is fine at 3 backends.
  2. Unconditional dep or behind an azure cargo feature?

Happy to implement and PR.