Skip to content

Fleet-prove --cli-install=binary live install path #654

Description

@joshua-temple

Context

#653 added --cli-install=binary, which emits a self-contained CLI install (no third-party action) that resolves the release tag, detects OS/arch, installs cosign by pinned checksum-verified download, and runs the embedded install.sh (sha256 + keyless cosign verify). Correctness of the emitted YAML is proven by actionlint and generator tests, and the verify contract is exercised hermetically by internal/setupcli.

What is NOT yet proven on real GitHub: the live resolve-tag + download + cosign-install + verify path, end to end. The e2e harness swaps the CLI install for a mock, and no fleet example repo currently opts into binary mode, so a normal fleet run only exercises action mode.

Ask

Add fleet coverage that generates with --cli-install=binary and runs a real scenario, so the live install path is exercised on GitHub-hosted runners. Options:

  • Add a small binary-mode example repo to the fleet roster (fleet-e2e.yaml), wired like the others (token secret set when it joins the roster, branch protection to standard), OR
  • Flip an existing lightweight lane to binary mode if that gives cleaner signal without a new repo.

Acceptance: a green fleet run that includes a binary-mode lane, confirming the resolve/download/cosign-install/verify steps succeed against a real release.

Notes

  • The pinned cosign version (v2.4.3) and its per-arch sha256 in internal/generate/setup_cli_binary_preamble.sh are load-bearing; they were verified against the sigstore/cosign v2.4.3 release at merge time. Any bump must re-verify them.
  • action mode is unaffected (byte-identical), so this is validation of a new opt-in path, not a regression risk to existing consumers.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions