Skip to content

[pull] main from trunk-io:main - #80

Merged
pull[bot] merged 1 commit into
dragonfish:mainfrom
trunk-io:main
Jul 8, 2026
Merged

[pull] main from trunk-io:main#80
pull[bot] merged 1 commit into
dragonfish:mainfrom
trunk-io:main

Conversation

@pull

@pull pull Bot commented Jul 8, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

…1147)

## What

Adds an org-wide escape hatch for exercising a specific (e.g.
pre-release) **analytics CLI** build in the test-result uploads, without
a code change. Set the `ANALYTICS_CLI_PRE_RELEASE_TEST_VERSION` Actions
variable to a version and every `analytics-uploader` invocation uses it;
set it to `latest` (the default) and the uploader resolves latest
itself.

Mirrors the change in `trunk-io/trunk2`, `trunk-io/trunk`, and
`trunk-io/chimerarepo`.

## ⚠️ Input name: `analytics-cli-version` (not `cli-version`)

These composite actions **already have a `cli-version` input**, but it
means *the trunk CLI under test* (`PLUGINS_TEST_CLI_VERSION`) —
unrelated to the analytics uploader. To avoid a collision, the new input
is named **`analytics-cli-version`**.

## Why it's threaded through inputs, not `vars` directly

The uploader lives inside the `linter_tests`, `tool_tests`, and
`action_tests` composite actions, and the `vars` context is **not
readable inside composite actions**. So an `analytics-cli-version` input
(default `latest`) is added to each, and `${{
vars.ANALYTICS_CLI_PRE_RELEASE_TEST_VERSION }}` is passed at every call
site. The uploader step forwards it: `cli-version: ${{
inputs.analytics-cli-version }}`.

## Behavior

| `ANALYTICS_CLI_PRE_RELEASE_TEST_VERSION` | `cli-version` used |
|---|---|
| `latest` (default) | passed to the uploader, which resolves latest
itself |
| e.g. `0.14.0.pre.beta.2` | that exact version |

These steps previously set no `cli-version`, so the `latest` default is
behavior-preserving.

## Changes

-
**`.github/actions/{linter_tests,tool_tests,action_tests}/action.yaml`**
— new `analytics-cli-version` input (default `latest`); `Upload prod
results` step now sets `cli-version: ${{ inputs.analytics-cli-version
}}`.
- **Call sites (13)** pass `analytics-cli-version: ${{
vars.ANALYTICS_CLI_PRE_RELEASE_TEST_VERSION }}`: `pr.yaml` (6),
`nightly.yaml` (4), `windows_nightly.yaml` (2),
`upload_results.reusable.yaml` (1).

## Notes / scope

- Wired at **all** call sites uniformly, including the Windows jobs
(`windows_nightly.yaml` and the disabled `windows_*` jobs in `pr.yaml`).
The uploader step is gated `runner.os != 'Windows'`, so those are
harmless no-ops today — but consistent and ready if Windows upload is
enabled.
- **Out of scope:** `upload_results.reusable.yaml`'s `trunk
upload-linter-versions` step is a plugins-specific upload (not the
analytics-uploader) and is untouched. The lone `Gemfile`
(`linters/brakeman/test_data/`) is linter *test fixture* data, not a CI
rspec flow.
- I could not run `trunk check` / `trunk fmt` locally (the sandbox proxy
blocks `get.trunk.io`); edits match existing indentation and were
validated with a YAML parser; the repo's Trunk Check on the PR is the
verification.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---
_Generated by [Claude
Code](https://claude.ai/code/session_019qcw8v8TiTHRGdDSH7J3ia)_

Co-authored-by: Claude <noreply@anthropic.com>
@pull pull Bot locked and limited conversation to collaborators Jul 8, 2026
@pull pull Bot added the ⤵️ pull label Jul 8, 2026
@pull
pull Bot merged commit 1f03362 into dragonfish:main Jul 8, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant