Appearance
Builds in the web UI
Open Builds in the sidebar (/u/<your username>/builds). It lists every build of the account — started from the UI, from pvr or from GitHub Actions — newest first.
The Builds page
- Filters: by project, by status (Queued, Running, Succeeded, Failed, Canceled), and a search box (run ID, project, target, commit).
- Columns: status, run ID, Pipeline (the stages — fetch, build, package, sign, artifact — and how far the build got), project, source and target (repository, ref @ commit, architectures), duration and creation time.
- Actions per row: open, cancel a running build, retry a finished one.
Starting a pipeline
Click New pipeline.
- Project — a name that groups related builds (
mqtt-sdk,hello-http). Letters, digits,.,_and-. - Source
Git repository — then What to build:
- pvpkg.json package — the repository's
pvpkg.jsondecides: its Dockerfile, or its Yocto or Buildroot recipe. Set Package directory to the folder holdingpvpkg.json(.for the root). - Dockerfile — builds a Dockerfile; set its path and the Build context.
Fill Git repository URL (HTTPS GitHub or GitLab) and Branch, tag or commit. A tag versions the package with its name.
- Image base — meta-pantavisor's
pantavisor-image-basewith kas; the kas files of the Raspberry Pi are filled in. See Flashable device images.
- pvpkg.json package — the repository's
Digest-pinned registry image —
registry/app@sha256:….Flashable device images — start from an image base or a factory build, choose the signing identity, the app builds, the policies and the secure boot mode; tick Make factory images for secret-free factory images instead. The fields.
Simulation (local testing) — a fake build, for a development Hub with a simulation runner; the stage runners do not run them.
- Architectures — comma-separated:
amd64,arm64,arm32v6. More than one makes a pipeline with one build per architecture. - Limit per architecture (seconds) — up to 14400 (4 h) for Git sources, 3600 otherwise. The pvpkg.json kind defaults to 7200, enough for a Yocto build from the shared cache.
- App name and secrets (optional)
- App name — the container's name in the export and on the device. Default: from
pvpkg.json, else the repository or image name. - Git secret — Automatic uses the account's matching secret to fetch the repository only. Choose a secret to also give it to a Yocto or Buildroot recipe's own fetches (why).
- Signing key — Developer key by default; choose a
pvssecret to sign with your key. An identity's keys are listed as<identity>-oem (signing identity <identity>): pick the OEM key for apps. - Add an OEM configuration part — one policy per config file, each key a value or a config secret, and any other files; signed with the identity's platform key unless you choose another. Details.
- App name — the container's name in the export and on the device. Default: from
Click Start pipeline. Submitting the same form twice does not start two builds: the form reuses its request key until you change a field.
Following a build
A build's page has four tabs:
- Summary — status, the stage it is in, the exact source commit, which secret fetched it, and per architecture: duration, the export, its sha256, version and signature (Signed and verified with your key, or Developer key — not for release). For a
pvpkg.jsonbuild it also shows what was packaged (the manifest,pvpkg/generic, the architecture's overlay). - Logs — the runner's log, live while the build runs. Follow keeps the newest line in view; filter by text or line number; Copy or Save the whole log.
- Artifacts — the exports and images. Download fetches one through a short-lived link and checks its sha256 before saving it. Badges say what each is: Flashable image, Image base, Factory image; Holds device join tokens on the ones deleted 7 days after the build, and Expired: build again once they are.
- Configuration — the request exactly as submitted, and the resolved source.
Cancel stops a queued or running build. Retry queues a finished build's request again as a new build — of the same commit, or of the same tag if it still points to the same commit.
Managing secrets and signing identities
- User menu → Secrets: see Secrets, tokens and signing.
- User menu → Signing: create identities, rotate or upload their keys, and Show image setup for the trust an image needs. See Signing identities.