This action is designed to use the Azure CLI to upload a directory of your choice to your Azure Blob Storage account.
Place in a .yml
file such as this one in your .github/workflows
folder. Refer to the documentation on workflow YAML syntax here.
name: Upload To Azure Blob Storage
on:
push:
branches:
- main
jobs:
upload:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: edjufy/[email protected]
with:
source_dir: _dist
container_name: www
connection_string: ${{ secrets.ConnectionString }}
extra_args: '--pattern *.tar.gz'
sync: false
If you want to synchronize local and remote state (for example, if you are publishing a static website), enable the sync
flag.
Here's an example that will generate and upload a Hugo static site to Azure Blob Storage on every push to master:
name: Upload To Azure Blob Storage
on:
push:
branches:
- main
jobs:
upload:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: chabad360/hugo-actions@master
- uses: edjufy/[email protected]
with:
source_dir: 'public'
container_name: '$web'
connection_string: ${{ secrets.ConnectionString }}
sync: true
Key | Value |
---|---|
source_dir |
The name of the directory you want to upload |
container_name |
The name of the storage account container these assets will be uploaded to |
connection_string |
Your Azure Blob Storage connection string |
sync |
Use az storage blob sync to synchronize blobs recursively |
Key | Value |
---|---|
extra_args |
Extra arguments that can be passed to az storage blob upload-batch . Useful for passing flags like --pattern or --destination-path |
sas_token |
The shared access signature token for the storage account. Either connection_string or sas_token must be supplied |
This project is distributed under the Apache 2 license.