Skip to content

chore(scripts): build and link every local command for unreleased testing - #1071

Merged
jeremi merged 1 commit into
mainfrom
scripts/install-local
Sep 15, 2026
Merged

jeremi merged 1 commit into
mainfrom
scripts/install-local

Conversation

@jeremi

@jeremi jeremi commented Sep 15, 2026

Copy link
Copy Markdown
Member

Summary

Adds scripts/install-local.sh, a developer convenience that builds every command binary from the working tree (--locked, default release profile) and links it into ~/.local/bin (overridable via --install-dir or REGISTRY_INSTALL_DIR) as symlinks into the cargo target directory. The published product installers only install tagged release assets; this covers the gap for testing unreleased local builds. Rerunning the script after a rebuild refreshes every command at once.

Installed commands: breg bregctl casework caseworkctl discovery discoveryctl evidence evidence-oid4vci evidencectl registry-manifest relay relayctl.

Checks

  • shellcheck scripts/install-local.sh is clean.
  • Test run with --profile dev --install-dir <tempdir>: all twelve binaries built and ran through the links (bregctl --version, relay --version).
  • Real run with the default release profile into ~/.local/bin from the current origin/main tree: all twelve commands report 0.31.0-dev.

Notes

  • The cargo invocation grouping mirrors release/scripts/build-release-binaries.sh: bregctl and relayctl enable authoring-only tooling features on their server libraries, and one cargo invocation unifies features across everything it builds, so breg and relay build in separate invocations to keep the production feature set.
  • mint is intentionally absent: retired in feat: add institutional contextual authorization and retire Mint #1029.
  • The script replaces a non-symlink file in the install directory only with a printed notice; rerunning a product's published installer restores its release binaries. No release, migration, or compatibility impact.

DCO

  • Every commit includes a Signed-off-by trailer.
  • I reviewed the submitted changes and am responsible for the contribution.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

…ting

Add scripts/install-local.sh, which builds all twelve command binaries
from the working tree with --locked and links them into an install
directory (default ~/.local/bin) as symlinks into the cargo target
directory, so testing an unreleased Registry Stack is one rerunnable
script. The published product installers only install tagged release
assets; this covers that gap for local builds.

The cargo invocation grouping follows the release pipeline: breg and
relay build apart from bregctl and relayctl, whose authoring-only
tooling features would otherwise unify into the server binaries.

Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
@jeremi
jeremi force-pushed the scripts/install-local branch from 146cdbe to 731dd79 Compare September 15, 2026 16:19
@jeremi
jeremi merged commit 295fa7d into main Sep 15, 2026
39 checks passed
@jeremi
jeremi deleted the scripts/install-local branch September 15, 2026 16:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant