Skip to content

GitHub Action to sync a directory with a remote Backblaze B2 bucket.

License

Notifications You must be signed in to change notification settings

earendildev/backblaze-b2-action

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub Action for Backblaze B2 🔥

This simple action syncs a directory (either from your repository or generated during your workflow) with a remote bucket on Backblaze B2.

Many find B2 appealing because of its free bandwidth deal with Cloudflare via the Bandwidth Alliance, but unlike other popular cloud "bucket" providers like DigitalOcean Spaces and DreamObjects, it is not compatible with S3's API, so using this official Python-based tool is required.

Usage

workflow.yml Example

Place in a .yml file such as this one in your .github/workflows folder. Refer to the documentation on workflow YAML syntax here.

name: Sync B2 Bucket
on: push

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout
      uses: actions/checkout@master
    - name: Push To Your Bucket
      uses: earendildev/backblaze-b2-action@master
      env:
        SOURCE_DIR: './'
        B2_BUCKET_PATH: 'b2://some-bucket/some/path/'
        B2_APPKEY_ID: ${{ secrets.B2_APPKEY_ID }}
        B2_APPKEY: ${{ secrets.B2_APPKEY }}

Required Environment Variables

Key Value Type Required
SOURCE_DIR The local directory you wish to sync/upload to B2. For example, ./public or ./. env Yes

Required Secret Variables

The following variables should be added as "secrets" in the action's configuration.

Key Value Type Required
B2_BUCKET_PATH The name of the bucket you're syncing to. For example, b2://some-bucket/some/dir/. secret Yes
B2_APPKEY_ID Your Backblaze Application Key ID. Generate it here. secret Yes
B2_APPKEY Your Backblaze Application Key — aka the "secret" key. Generate it here. secret Yes

License

This project is distributed under the MIT license.

About

GitHub Action to sync a directory with a remote Backblaze B2 bucket.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 50.5%
  • Dockerfile 49.5%