Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

buildpulse/setup-docker-builder

Drop-in replacement for docker/setup-buildx-action on BuildPulse docker-builder runners. Points buildx at the runner's local rootless buildkitd sidecar, whose state is hydrated from / committed to a persistent per-tenant cache on node NVMe. No cache-from/cache-to config — the cache is the daemon's own --root, so it preserves layer cache and RUN --mount=type=cache.

jobs:
  build:
    runs-on: bp-docker-builder-x64-32x   # a BuildPulse docker-builder pool
    steps:
      - uses: actions/checkout@v4
      - uses: buildpulse/setup-docker-builder@v1
      - uses: docker/build-push-action@v6
        with:
          push: true
          tags: myimage:latest

How it works

  • The pod's init container hydrates the buildkitd --root from /mnt/nvme/bk-cache/<tenant-namespace> before buildkitd starts.
  • This action wires buildx to unix:///run/buildkit/buildkitd.sock (remote driver).
  • On job success only, the post step commits the root back (Last-Write-Wins).

Build

npm ci && npm run build regenerates dist/ (committed — GitHub Actions runs dist/).

Status

v1. Needs: (1) extraction to its own buildpulse/setup-docker-builder repo to be uses:-able externally; (2) dev hardening of the commit step (quiesce buildkitd before copy to close the consistency window).

About

Drop-in setup-buildx for BuildPulse docker-builder runners: local NVMe-cached buildkitd, zero cache config

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages