quicknode-cli 0.1.0

Command-line interface for the Quicknode SDK
Documentation
[workspace]
members = ["cargo:."]

# Config for 'dist'
[dist]
# The preferred dist version to use in CI (Cargo.toml SemVer syntax)
cargo-dist-version = "0.32.0"
# CI backends to support
ci = "github"
# The installers to generate for each app
installers = ["shell", "powershell", "homebrew"]
# Target platforms to build apps for (Rust target-triple syntax)
targets = ["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
install-path = "CARGO_HOME"
# Where to host releases
hosting = "github"
# Whether to install an updater program
install-updater = false
# Homebrew tap repository to publish the formula to. The "homebrew"
# entry is deliberately omitted from publish-jobs until Phase 3 of the
# packaging plan creates quicknode/homebrew-tap and adds the
# HOMEBREW_TAP_TOKEN secret — without it, the formula push step would
# fail CI on every release. The formula itself is still generated and
# attached to each GitHub Release (it just doesn't get auto-committed
# to the tap).
tap = "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`).
formula = "qn"
publish-jobs = ["./publish-crates", "./publish-docker"]
# Emit SLSA build attestations for every binary archive. Critical for a credential-handling tool.
github-attestations = 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.
github-custom-job-permissions = { "publish-crates" = { contents = "read" }, "publish-docker" = { contents = "read", packages = "write", "id-token" = "write" } }