Introducing Pantahub Builder: Remote Multi-Arch Container & Image Builds

We are excited to introduce Pantahub Builder, an account-owned remote build service built into Pantacor Hub.

Instead of compiling containers, setting up cross-compilation toolchains, or running heavy Yocto builds locally, Pantahub Builder offloads the entire pipeline to Pantacor’s high-performance build runners. Point it at a Git repository (or a digest-pinned container registry image) and the builder turns it into a signed pvr export (<app>.pvrexport.tgz) ready to deploy directly to your Pantavisor devices.


What Can Be Built?

  • Dockerfiles: Builds container images using BuildKit and packages them into Pantavisor containers.
  • pvpkg.json Packages: Supports the packaging manifest of Pantacor CI, including Yocto (kas) and Buildroot recipes with shared sstate caches.
  • Digest-Pinned Registry Images: Imports existing pre-built container images and packages them for target device architectures.
  • Flashable Device Images: Assembles full flashable .img.xz system images for machines like Raspberry Pi, complete with custom signing identities, fleet policies, and auto-join tokens.

Key Features

  • Multi-Architecture Pipelines: Specify multiple architectures (such as amd64,arm64,arm32v6) in a single request. The builder pins the exact commit once and runs parallel child executions for each target architecture.
  • Integrated Secrets & Signing: Safely build private repositories and layers using account Git secrets without leaking credentials into Dockerfile builds or logs. Sign container exports with your account’s OEM keys or pvr developer keys.
  • Deterministic, Verified Artifacts: Completed builds produce SHA-256 verified .pvrexport.tgz archives stored directly in your account’s Pantahub storage.
  • Universal Access: The build service shares the same API across the Pantacor Hub Web UI, the pvr CLI, and GitHub Actions.

Quick How-To: 3 Ways to Use Pantahub Builder

1. In the Web UI

  1. Navigate to Builds in the sidebar of Pantacor Hub (/builds).
  2. Click New pipeline.
  3. Set your project name, source (Git repository URL and branch/tag/commit), and target architectures (e.g. arm64,amd64).
  4. Select any needed Git secrets or signing keys, and click Start pipeline.
  5. Watch live logs as the pipeline progresses through queued → fetch → build → package → sign → artifact.
  6. Download the verified export or deploy it directly to your devices.

2. With the pvr CLI

You can manage builds directly from your terminal using pvr build:

# Start a multi-arch build pipeline
pvr build start --project my-app \
  --git-url https://github.com/my-org/my-app.git \
  --git-ref main \
  --platform arm64,amd64 \
  --limit-seconds 1800

# Inspect status and live logs
pvr build status <build-id>
pvr build logs <build-id>

# Download verified artifact
pvr build download --platform arm64 <build-id>

To deploy the resulting export to a running device:

pvr merge my-app.pvrexport.tgz
pvr commit
pvr post -m "Deploy my-app container"

3. From GitHub Actions

Integrate Pantahub Builder directly into your GitHub CI/CD workflows:

- uses: ./.github/actions/pantahub-builder
  with:
    api-url: https://api.stage.pantahub.com
    api-username: ${{ secrets.PANTAHUB_USER }}
    api-key: ${{ secrets.PANTAHUB_TOKEN }}
    project: my-app
    platform: linux/arm64,linux/amd64
    timeout-minutes: 60

Learn More in the Docs

Comprehensive guides covering repository preparation, signing identity workflows, flashable device images, and API reference are available in the Pantacor Hub documentation:

Give it a try and share your feedback with us here!