Skip to content

Azure Blob ​

Writes files to a container prefix. It does not create a Synapse table — use Synapse when you want SQL there.

Before you begin ​

  • Storage account name and container.
  • An account key or a SAS token. Store it in the environment.
bash
export AZURE_STORAGE_ACCOUNT_KEY="..."

Configure ​

python
from skippr import Config, DataSinkAzureBlob, EnvRef, Pipeline

cfg = Config.discover()
raw = cfg.data_sink(
    "raw",
    DataSinkAzureBlob(
        account_name="acmelanding",
        container="skipprd",
        account_key=EnvRef("AZURE_STORAGE_ACCOUNT_KEY"),
        prefix="events",
    ),
)
cfg.pipeline("events", Pipeline(data_source=cfg.get_data_source("sample"), data_sink=raw))
cfg.save()
bash
skipprd connect data-sink azure_blob \
  --pipeline events \
  --name raw \
  --account-name acmelanding \
  --container skipprd \
  --account-key '${AZURE_STORAGE_ACCOUNT_KEY}' \
  --prefix events
yaml
data_sinks:
  raw:
    AzureBlob:
      account_name: acmelanding
      container: skipprd
      account_key: ${AZURE_STORAGE_ACCOUNT_KEY}
      prefix: events

Options ​

KeyTypeRequired/DefaultDescription
account_namestringRequiredStorage account
containerstringRequiredContainer
account_keysecretNot setAccount key as ${ENV}
sas_tokensecretNot setSAS token as ${ENV} (use instead of the key)
prefixstringNot setBlob prefix
formatstringNot setObject format override

A retry overwrites the same blob.

How data lands ​

Blobs land under {container}/{prefix}/{namespace}/.

Troubleshooting ​

SymptomFix
Authentication failedExport account_key or sas_token in this shell
Container missingCreate it, or grant the key rights to create it
403 on prefixNarrow SAS to write on that prefix

Next steps ​