Thanks to visit codestin.com
Credit goes to github.com

Skip to content

chore(ci): switch back to github-hosted runners#10144

Merged
jdx merged 1 commit into
mainfrom
chore/github-hosted-runners
May 30, 2026
Merged

chore(ci): switch back to github-hosted runners#10144
jdx merged 1 commit into
mainfrom
chore/github-hosted-runners

Conversation

@jdx

@jdx jdx commented May 29, 2026

Copy link
Copy Markdown
Owner

Summary

  • replace Namespace runner labels with GitHub-hosted ubuntu-latest/macos-latest
  • replace remaining namespacelabs/nscloud-cache-action steps with the repo's existing pinned Swatinem/rust-cache pattern outside release.yml
  • keep .github/workflows/release.yml cache-free; its jobs only switch runner labels
  • allow Rust cache writes from trusted main and release branch refs while keeping PR refs read-only
  • run test-vfox on main and release so its Rust cache can be saved
  • run the main test workflow on release-branch pushes and set TEST_ALL=1 there
  • fix stale registry tests for wash, ghcup, infisical, and amp exposed by the full registry matrix

Test

  • mise run build
  • MISE_EXPERIMENTAL=1 MISE_LOCKFILE=1 MISE_USE_VERSIONS_HOST_TRACK=0 RUST_BACKTRACE=1 target/debug/mise test-tool --jobs=1 wash ghcup infisical
  • npm_config_yes=true npx @sourcegraph/[email protected] --help
  • rg -n "namespace-profile|namespacelabs/nscloud-cache-action" .github/workflows .github/actions || true
  • rg -n "cache|Swatinem/rust-cache|actions/cache|nscloud-cache|sccache|RUSTC_WRAPPER|SCCACHE" .github/workflows/release.yml || true
  • git diff --check
  • actionlint -ignore 'SC2129'

Note: plain actionlint still reports the existing SC2129 style warning in registry.yml; ignored here to validate this runner/cache change.


Note

Medium Risk
Broad CI runner and caching changes can slow builds or break PR workflows; registry backend/test edits affect tool installs in production registry paths.

Overview
Moves CI off Namespace self-hosted runners to GitHub-hosted ubuntu-latest / macos-latest across docs, test, registry, hyperfine, release-plz, and related workflows. release.yml only changes runner labels; it stays without the new Rust cache steps.

Replaces namespacelabs/nscloud-cache-action with pinned Swatinem/rust-cache (still paired with sccache where used). Cache writes are limited to main and release refs; PRs stay restore-only. test and test-vfox now run on release pushes so caches can be saved; test e2e sets TEST_ALL=1 on the release branch.

Registry fixes for stale test-tool expectations: wash / ghcup version strings, infisical GitHub asset pattern, and amp npm backend (@ampcode/cli with allow_builds).

Reviewed by Cursor Bugbot for commit 9e4c960. Bugbot is set up for automated code reviews on this repo. Configure here.

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@greptile-apps

greptile-apps Bot commented May 29, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR migrates all CI jobs from Namespace self-hosted runners to GitHub-hosted ubuntu-latest/macos-latest and replaces namespacelabs/nscloud-cache-action with the repo's existing Swatinem/rust-cache pattern, gating cache writes to main and release refs. Registry entries for amp, ghcup, infisical, and wash are corrected to fix stale install/version tests.

  • Runner and cache migration: All workflow jobs now use standard GitHub-hosted runners; Swatinem/rust-cache is consistently placed before taiki-e/install-action (including the previously-flagged lint job), and release.yml is intentionally kept cache-free.
  • Trigger expansion: test-vfox and test now fire on release branch pushes so the Rust cache can be primed; TEST_ALL=1 correctly handles both push and PR contexts via the github.ref/github.head_ref combined check.
  • Registry fixes: ghcup expected output gains the v prefix it actually emits; wash drops the v prefix it no longer emits; infisical adds an explicit asset pattern; amp switches to npm:@ampcode/cli with allow_builds (test removed).

Confidence Score: 5/5

Safe to merge — changes are purely infrastructure (runner labels, cache provider) and registry test-expectation corrections with no runtime logic altered.

The runner swap and cache action replacement follow a consistent, well-tested pattern already used elsewhere in the repo. The save-if gating, lint-job ordering fix, and trigger expansions are all correct. Registry corrections align expected output with what the tools actually emit. The only gap is the removed amp test entry, which reduces automated coverage for that tool but does not break anything.

registry/amp.toml — the test field was dropped; worth confirming whether @ampcode/cli exposes a --version flag that could restore automated verification.

Important Files Changed

Filename Overview
.github/workflows/test.yml Runner labels replaced with ubuntu-latest/macos-latest; nscloud-cache-action replaced with Swatinem/rust-cache (placed correctly before install-action in the lint job); save-if now gates writes to main and release; TEST_ALL handles both push and PR contexts for the release branch.
.github/workflows/registry.yml All six jobs updated to ubuntu-latest; the build job swaps nscloud-cache-action for Swatinem/rust-cache with write-gating on main/release. No logic changes.
.github/workflows/release.yml Only runner labels changed (ubuntu-latest / macos-latest). Intentionally kept cache-free as described in the PR.
.github/workflows/test-vfox.yml Push trigger extended to include main so the Rust cache can be seeded there; runner and cache action replaced consistently with other workflows.
.github/workflows/hyperfine.yml Runner and cache action updated identically to the pattern used across other workflows.
registry/amp.toml Backend switched from npm:@sourcegraph/amp to npm:@ampcode/cli with allow_builds; test entry removed entirely, leaving no automated version verification for this tool.
registry/ghcup.toml Test expected string corrected to include the v prefix that ghcup --version actually emits.
registry/infisical.toml Asset pattern added so mise can unambiguously resolve the correct GitHub release artifact for the platform.
registry/wash.toml Version prefix expectation corrected: wash now emits a bare version string without v, so the expected value is updated accordingly.
.github/workflows/docs.yml Runner label swapped to ubuntu-latest; no other changes.
.github/workflows/release-plz.yml Runner label swapped to ubuntu-latest; no other changes.
.github/workflows/vendored-file-warning.yml Runner label swapped to ubuntu-latest; no other changes.

Fix All in Claude Code

Reviews (10): Last reviewed commit: "chore(ci): switch back to github-hosted ..." | Re-trigger Greptile

Comment thread .github/workflows/test-vfox.yml Outdated
@jdx jdx force-pushed the chore/github-hosted-runners branch from 71eac1a to 6a252ce Compare May 30, 2026 00:09
Comment thread .github/workflows/test.yml Outdated
if: github.repository == 'jdx/mise'
timeout-minutes: 20
runs-on: namespace-profile-endev-linux-amd64;overrides.cache-tag=mise-release-plz-rust-linux
runs-on: ubuntu-latest

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing rust-cache step in release-plz workflow

Medium Severity

The release-plz.yml workflow switched from a Namespace runner (which had implicit filesystem-level caching via the cache-tag override) to ubuntu-latest, but unlike every other workflow that performs a cargo build, no Swatinem/rust-cache step was added. The workflow runs cargo build --all-features on every push to main and on a daily cron, and the 20-minute timeout may not be sufficient for uncached builds on a standard GitHub-hosted runner.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 6a252ce. Configure here.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Leaving this unchanged intentionally: we do not want to use cache on release workflows/builds, so release-plz should stay uncached even though it now runs on ubuntu-latest.

This comment was generated by an AI coding assistant.

@github-actions

github-actions Bot commented May 30, 2026

Copy link
Copy Markdown

Hyperfine Performance

mise x -- echo

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.5.16 x -- echo 22.9 ± 0.5 22.0 28.3 1.00 ± 0.03
mise x -- echo 22.8 ± 0.4 22.1 25.6 1.00

mise env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.5.16 env 22.4 ± 0.7 21.7 28.6 1.01 ± 0.03
mise env 22.2 ± 0.4 21.3 24.6 1.00

mise hook-env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.5.16 hook-env 23.1 ± 0.4 22.3 25.1 1.00 ± 0.02
mise hook-env 23.0 ± 0.4 22.2 24.8 1.00

mise ls

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.5.16 ls 20.2 ± 0.3 19.5 22.1 1.01 ± 0.03
mise ls 20.1 ± 0.4 19.3 23.6 1.00

xtasks/test/perf

Command mise-2026.5.16 mise Variance
install (cached) 171ms 167ms +2%
ls (cached) 84ms 82ms +2%
bin-paths (cached) 89ms 86ms +3%
task-ls (cached) 154ms 150ms +2%

@jdx jdx force-pushed the chore/github-hosted-runners branch from 6a252ce to d5b54e5 Compare May 30, 2026 00:32
Comment thread .github/workflows/registry.yml Outdated
@jdx jdx force-pushed the chore/github-hosted-runners branch from d5b54e5 to a7851e5 Compare May 30, 2026 02:30

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

There are 2 total unresolved issues (including 1 from previous review).

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit a7851e5. Configure here.

Comment thread .github/workflows/hyperfine.yml Outdated
@jdx jdx force-pushed the chore/github-hosted-runners branch 5 times, most recently from 8e9daf7 to b0382b4 Compare May 30, 2026 15:03
@jdx jdx force-pushed the chore/github-hosted-runners branch from b0382b4 to 9e4c960 Compare May 30, 2026 15:13
@jdx jdx enabled auto-merge (squash) May 30, 2026 15:20
@jdx jdx merged commit a3126f5 into main May 30, 2026
42 checks passed
@jdx jdx deleted the chore/github-hosted-runners branch May 30, 2026 15:34
This was referenced May 30, 2026
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