
Azure Upload
CertifiedUpload file(s) to Azure Blob Storage
Azure Upload
Upload file(s) to Azure Blob Storage
Uploads one or more files from Kestra internal storage to Azure Blob Storage.
type: io.kestra.plugin.azure.storage.blob.UploadExamples
Upload an input file to Azure Blob Storage
id: azure_storage_blob_upload
namespace: company.team
inputs:
- id: myfile
type: FILE
tasks:
- id: upload
type: io.kestra.plugin.azure.storage.blob.Upload
endpoint: https://kestra.blob.core.windows.net
connectionString: "{{ secret('AZURE_CONNECTION_STRING') }}"
container: kestra
from: "{{ inputs.myfile }}"
name: "myblob"
Extract data via an HTTP API call and upload it as a file to Azure Blob Storage
id: azure_blob_upload
namespace: company.team
tasks:
- id: extract
type: io.kestra.plugin.core.http.Download
uri: https://huggingface.co/datasets/kestra/datasets/raw/main/csv/salaries.csv
- id: load
type: io.kestra.plugin.azure.storage.blob.Upload
endpoint: https://kestra.blob.core.windows.net
connectionString: "{{ secret('AZURE_CONNECTION_STRING') }}"
container: kestra
from: "{{ outputs.extract.uri }}"
name: data.csv
Upload multiple files to Azure Blob Storage
id: azure_blob_upload_multiple
namespace: company.team
tasks:
- id: upload
type: io.kestra.plugin.azure.storage.blob.Upload
endpoint: https://kestra.blob.core.windows.net
connectionString: "{{ secret('AZURE_CONNECTION_STRING') }}"
container: kestra
from: "{{ outputs.previous_task.outputFiles }}"
name: "uploads/"
Properties
container *Requiredstring
The blob container.
endpoint *Requiredstring
Service endpoint URL
Base HTTPS endpoint of the target service.
from *RequiredNon-dynamicobject
Structured data items, either as a map, a list of map, a URI, or a JSON string.
Structured data items can be defined in the following ways:
- A single item as a map (a document).
- A list of items as a list of maps (a list of documents).
- A URI, supported schemes are
kestrafor internal storage files,filefor host local files, andnsfilefor namespace files. - A JSON String that will then be serialized either as a single item or a list of items.
Pebble expression referencing an Internal Storage URI e.g. {{ outputs.mytask.uri }}.
name *Requiredstring
The full blob path on the container.
accessTier string
P4P6P10P15P20P30P40P50P60P70P80HOTCOOLARCHIVEAccess tier
Hot/Cool/Archive for block blobs or premium tiers for page blobs; does not change etag
connectionString string
Connection string of the Storage Account.
immutabilityPolicy Non-dynamic
Immutability policy to apply to the uploaded blob
legalHold booleanstring
Legal hold
Sets legal hold; requires container immutable storage with versioning enabled
metadata object
Blob metadata
Key/value metadata to set on the blob
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
sasToken string
The SAS token to use for authenticating requests.
This string should only be the query parameters (with or without a leading '?') and not a full URL.
validateChecksum booleanstring
Validate checksum
Compute MD5 client-side and pass it to Azure for server-side integrity verification; on mismatch the upload fails with Md5Mismatch
Outputs
blob
Uploaded blob (single file only)
Present only when a single file is uploaded; null for multiple files
blobs array
All uploaded blobs
List of all uploaded blobs
Metrics
file.size counter
The size of the uploaded blob, in bytes.