autonomy ros2 bridge install

Fetch + install the governed_ros2_bridge native binary for this host

Synopsis

Detects the host's ROS distro (via $ROS_DISTRO or /opt/ros/<distro>/
setup.bash) + arch (via uname -m), fetches the matching release tarball
from the canonical AutonomyOps release pipeline, cosign-verifies the
release SHA256SUMS bundle against the official OIDC subject, SHA256-
verifies the tarball against that signed manifest, extracts + installs
the binary.

By default fetches the latest tagged release; pin a specific version
with --version vX.Y.Z. By default installs to /usr/local/bin (sudo
fallback when not writable); operator-pinned via --install-dir.

cosign verification is the default. --no-verify is an escape hatch for
air-gapped environments where the public-good Fulcio + Rekor endpoints
aren't reachable; pre-fix discovery: an unverified install on an open
network is strictly worse than failing closed, so the default IS the
verified path.

This command only installs from the official AutonomyOps release
pipeline — alternate / fork repositories are not a supported workflow.
The verifier is intentionally anchored to the canonical release
identity (see integrity.BuiltinExpectedOIDCSubject).

The AutonomyOps/adk release repo is private, so both the latest-tag
lookup and the asset download require a GitHub token with read access
to its releases. Supply it via --token, or export GH_TOKEN or
GITHUB_TOKEN (honored in that precedence order); the same token an
operator already uses for the gh CLI works here.

Usage

autonomy ros2 bridge install [flags]

Options

      --dry-run              print the asset URL + destination without downloading or writing anything
      --install-dir string   destination directory for the governed_ros2_bridge binary (sudo fallback when not writable) (default "/usr/local/bin")
      --no-verify            SKIP cosign signature verification (DANGEROUS: only for air-gapped envs where Fulcio/Rekor are unreachable). SHA256 verification still runs.
      --token string         GitHub token with read access to AutonomyOps/adk releases (the repo is private, so the tag lookup and asset download both need auth). Falls back to $GH_TOKEN then $GITHUB_TOKEN. Sent as a Bearer credential to api.github.com and the release asset host; stripped on the cross-host redirect to the pre-signed blob URL.
      --version string       release tag to install (e.g. v1.2.3); 'latest' resolves via the GitHub API (default "latest")

Options inherited from parent commands

      --require-signed-manifest   Refuse to start if the SHA256SUMS release manifest or its cosign signature is missing/invalid (Tier 2 binary-integrity check; default: build-time compile-in via -ldflags -X, build-hardened artifacts=true, all others=false)

See also