1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
[]
= ["cargo:."]
# Config for 'dist'
[]
# The preferred dist version to use in CI (Cargo.toml SemVer syntax)
= "0.32.0"
# CI backends to support
= "github"
# The installers to generate for each app
= ["shell", "powershell", "homebrew"]
# Target platforms to build apps for (Rust target-triple syntax)
= ["aarch64-apple-darwin", "aarch64-unknown-linux-gnu", "aarch64-unknown-linux-musl", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl", "x86_64-pc-windows-msvc"]
# Path that installers should place binaries in
= "CARGO_HOME"
# Where to host releases
= "github"
# Whether to install an updater program
= false
# Homebrew tap repository to publish the formula to. The "homebrew"
# entry is deliberately omitted from publish-jobs until CI has a PAT
# with contents:write on the tap repo — without that secret, the
# formula push step would fail CI on every release. The formula
# itself is still generated and attached to each GitHub Release.
# Until that's wired, run
# `just release-update-homebrew-tap VERSION TAP_PATH` to push the
# formula to quicknode/homebrew-tap manually.
= "quicknode/homebrew-tap"
# Override the Homebrew formula name so `brew install quicknode/tap/qn` works
# (default would derive it from the package name `quicknode-cli`).
= "qn"
= ["./publish-crates", "./publish-docker", "./publish-deb", "./publish-copr"]
# Emit SLSA build attestations for every binary archive. Critical for a credential-handling tool.
= true
# The repo is `internal`, so the reusable workflow's auto-minted
# GITHUB_TOKEN needs explicit contents:read to checkout the source.
# Without this the actions/checkout step in each publish workflow
# fails with `Repository not found` (a 404 masquerading as a missing
# auth claim on a private repo). Granting the permission here widens
# the calling job's permission grant so the called workflow can also
# declare contents:read without exceeding the caller. publish-deb
# needs contents: write so it can `gh release upload` the .deb files.
= { = { = "read" }, = { = "read", = "write", = "write" }, = { = "write" }, = { = "read" } }