Skip to content

Add actions/setup: consumer tool bootstrap at the Cargo.lock rev - #63

Merged
lann merged 1 commit into
mainfrom
actions-setup
Aug 7, 2026
Merged

Add actions/setup: consumer tool bootstrap at the Cargo.lock rev#63
lann merged 1 commit into
mainfrom
actions-setup

Conversation

@lann

@lann lann commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

Fixes #56 (umbrella #14). The consumer-side survey found four diverged copies of the same _ct-tools bootstrap (webcrypto, websocket, webrtc-datachannels, tls). This owns the CI half upstream:

  • actions/setup: derives rev+url from the consumer's Cargo.lock (crate-name-anchored on component-test-sdk — rename-proof, same rule as pins), caches the install root keyed (os, rev, rust-toolchain.toml), installs component-test-cli + component-test-runner (configurable), and runs the pins gate over the Cargo lock plus any declared JS lockfiles. Outputs rev and bin for downstream steps. source-path installs from a checkout instead of --git — used by the smoke job here, and the analogue of webcrypto's local-override env.
  • actions/README.md: documents the action and the one canonical local _ct-tools recipe consumers should converge on (near-identical copies review sublinearly; the current four variants don't).
  • ci.yml actions-setup-smoke: dogfoods the action from source with a synthetic consumer lock pinned to the commit under test; asserts outputs and bin names.

Adoption PRs on the four consumers follow once this merges (they also delete their per-repo cache stanzas and ct-rev plumbing).

Every consumer hand-rolled the same bootstrap (derive the pin from
Cargo.lock, cargo install, pins gate), and the four copies diverged.
The composite action owns the CI half — rev-keyed cache included —
and actions/README.md now carries the one canonical local recipe so
the justfile copies can converge textually.

The ci.yml smoke job dogfoods the action from source against a
synthetic consumer lock pinned to the commit under test, asserting
the outputs and bin names.

Fixes #56.
@lann
lann merged commit c8de461 into main Aug 7, 2026
3 checks passed
@lann
lann deleted the actions-setup branch August 7, 2026 04:08
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.

actions/setup: consumer tool bootstrap (install component-test-cli/ct-runner at the Cargo.lock rev, cache, pins gate)

1 participant