Load and execute changelogs, flows, and properties from Azure Blob Storage
Liquibase supports loading and executing files directly from Azure Blob Storage. This includes changelog, Flow, and liquibase.properties
files that define how Liquibase runs and what changes it applies to your database.
By using the az://
URL format, you can reference files stored in Azure Blob Storage when running Liquibase commands. This enables remote execution, supports centralized file management, and ensures consistency across environments and teams.
This article shows you how to reference and execute Liquibase files stored in Azure Blob Storage and how to configure your commands for remote access.
Requirements
- Liquibase 4.32.0+
- Liquibase Pro license.
- Azure storage account
Prerequisites
- Add the Storage Blob Data Contributor condition to your storage account using role assignment in Azure
- Install the Liquibase Azure extension
- How to Apply Your Liquibase Pro License Key
- Connect Liquibase to Azure Blob Storage
Load and execute a changelog file
You can upload your changelog file to Azure Blog Storage using the Azure Portal. Once your changelog file is stored in Azure Blob Storage, you can reference it with the --changelog-file
argument to execute updates or generate SQL output.
Before you run the example code, be sure to:
- Replace your_blob_container with the name of your blob storage container in Azure where you would like to upload the file.
- Replace my-changelog.sql with the file name of your changelog stored in Azure.
liquibase update \
--changelog-file=az://your_blob_container/my-changelog.sql
Ways you can verify your changes:
- Check the Liquibase command output – The command output will confirm which changeSets ran or were skipped.
- Inspect the database – Verify that the changes are present, such as new tables or columns.
- Check the DATABASECHANGELOG table – Liquibase logs all executed changeSets here. Look for new rows with matching id, author, and filename.
Load and execute a flow file
Flow files define automated, multi-step processes that may include snapshots, updates, or checks. Once a flow file is stored in Azure Blob Storage, you can execute it using the --flow-file
option.
Before you run the example code, be sure to:
- Replace your_blob_container with the name of your blob storage container in Azure where you would like to upload the file.
- Replace liquibase.flowfile.yaml with your flow file’s name.
liquibase flow \
--flow-file=az://your_blob_container/liquibase.flowfile.yaml
Ways you can verify your changes:
- Review the CLI output – Each step in the flow will print status messages, such as “Snapshot created” or “Update successful”.
- Check for generated files – If your flow writes output, confirm the file appears in Azure Blob Storage.
- Validate changes via the database – If the flow includes
update
ordiff
, inspect the database or output files as appropriate.
Load a properties file
You can upload your liquibase.properties
file to the Azure Blog Storage using the Azure Portal. The liquibase.properties
file contains settings that configure how Liquibase commands run. Once the liquibase.properties
file is stored, you can use the --defults-file
option to tell Liquibase where to load its configuration from.
Before you run the example code, be sure to:
- Replace your_blob_container with the name of your blob storage container in Azure where you would like to upload the file.
- Replace liquibase.properties with your properties file name.
liquibase update \
--defaults-file=az://your_blob_container/liquibase.properties
Ways you can verify your changes:
-
Changes appear in the DATABASECHANGELOG table or the database, depending on the command used.