Skip to content
This repository was archived by the owner on Jan 24, 2026. It is now read-only.
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Blobber Action

A GitHub Action for Blobber, a CLI tool that pushes and pulls files to OCI container registries using the eStargz format.

Features

  • Cached installation of Blobber CLI via GitHub's tool cache
  • Push directories to OCI registries
  • Pull files from OCI registries
  • List files in a blob without downloading
  • Stream individual files via cat

Usage

Install Blobber CLI

- uses: meigma/blobber-action@v1

Push Files

- uses: docker/login-action@v3
  with:
    registry: ghcr.io
    username: ${{ github.actor }}
    password: ${{ secrets.GITHUB_TOKEN }}

- uses: meigma/blobber-action@v1
  id: push
  with:
    mode: push
    directory: ./dist
    reference: ghcr.io/${{ github.repository }}/artifacts:${{ github.sha }}

- run: echo "Pushed with digest ${{ steps.push.outputs.digest }}"

Pull Files

- uses: meigma/blobber-action@v1
  with:
    mode: pull
    reference: ghcr.io/${{ github.repository }}/artifacts:v1.0.0
    directory: ./downloaded
    overwrite: true

List Files

- uses: meigma/blobber-action@v1
  id: list
  with:
    mode: list
    reference: ghcr.io/${{ github.repository }}/artifacts:latest
    long-format: true

- run: echo '${{ steps.list.outputs.files }}' | jq '.[].path'

Stream Single File

- uses: meigma/blobber-action@v1
  with:
    mode: cat
    reference: ghcr.io/${{ github.repository }}/config:v1
    file-path: config.yaml

Inputs

Input Description Default
mode Operation mode: install, push, pull, list, or cat install
version Blobber CLI version (e.g., 1.0.0 or latest) latest
reference OCI reference (e.g., ghcr.io/owner/repo:tag) -
directory Directory to push from or pull to -
compression Compression for push: gzip or zstd gzip
overwrite Overwrite existing files during pull false
long-format Show size and mode in list output false
file-path Path within blob to stream (cat mode) -

Outputs

Output Description
digest Digest of pushed blob (push mode)
files JSON array of files (list mode)
file-count Number of files (list/pull modes)
version Installed Blobber CLI version
cache-hit Whether CLI was restored from cache

Authentication

This action uses Docker credentials for registry authentication. Use docker/login-action to authenticate before push/pull operations:

- uses: docker/login-action@v3
  with:
    registry: ghcr.io
    username: ${{ github.actor }}
    password: ${{ secrets.GITHUB_TOKEN }}

Supported Platforms

OS Architecture
Linux x64, arm64
macOS x64, arm64
Windows x64

License

MIT License

About

GitHub Action for installing and using the Blobber CLI

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages