Skip to content

Commit 458e541

Browse files
dfallingclaude
andauthored
Fix mise java version and source CI tool versions from mise (#24)
Renovate bumped `java = "zulu-17"` to `zulu-17.0.19+10`, but mise's Zulu backend uses Azul's distribution versioning (zulu-17.66.x.0), not JDK version strings — so `mise install` failed with "no metadata found". Switch to `temurin-17.0.19+10`, which uses that exact version format and matches the distribution CI already built with. CI didn't catch the breakage because it installed node/bun/java via the hardcoded actions/setup-* actions, never reading mise.toml. Replace those with jdx/mise-action so CI installs straight from mise.toml — now an invalid version fails the PR instead of only failing locally. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 4f6d527 commit 458e541

3 files changed

Lines changed: 13 additions & 36 deletions

File tree

.github/workflows/ci.yml

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,9 @@ jobs:
1212
steps:
1313
- uses: actions/checkout@v4
1414

15-
- uses: actions/setup-node@v4
16-
with:
17-
node-version: '22'
18-
19-
- uses: oven-sh/setup-bun@v2
20-
with:
21-
bun-version: '1.2'
15+
# Installs node, bun, and java from mise.toml so CI and local builds
16+
# share one source of truth — a bad version fails here, not just locally.
17+
- uses: jdx/mise-action@v2
2218

2319
- run: bun install --frozen-lockfile
2420

@@ -38,18 +34,9 @@ jobs:
3834
steps:
3935
- uses: actions/checkout@v4
4036

41-
- uses: actions/setup-node@v4
42-
with:
43-
node-version: '22'
44-
45-
- uses: oven-sh/setup-bun@v2
46-
with:
47-
bun-version: '1.2'
48-
49-
- uses: actions/setup-java@v4
50-
with:
51-
distribution: 'temurin'
52-
java-version: '17'
37+
# Installs node, bun, and java from mise.toml so CI and local builds
38+
# share one source of truth — a bad version fails here, not just locally.
39+
- uses: jdx/mise-action@v2
5340

5441
- uses: gradle/actions/setup-gradle@v4
5542

.github/workflows/release.yml

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -29,21 +29,10 @@ jobs:
2929
# Full history so we can derive a monotonic versionCode from commit count.
3030
fetch-depth: 0
3131

32-
- name: Set up Node
33-
uses: actions/setup-node@v4
34-
with:
35-
node-version: '22'
36-
37-
- name: Set up Bun
38-
uses: oven-sh/setup-bun@v2
39-
with:
40-
bun-version: '1.2'
41-
42-
- name: Set up JDK 17
43-
uses: actions/setup-java@v4
44-
with:
45-
distribution: 'temurin'
46-
java-version: '17'
32+
# Installs node, bun, and java from mise.toml so CI and local builds
33+
# share one source of truth — a bad version fails here, not just locally.
34+
- name: Set up mise tools
35+
uses: jdx/mise-action@v2
4736

4837
- name: Set up Gradle
4938
uses: gradle/actions/setup-gradle@v4

mise.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@
22
# Run `mise install` after cloning to install everything.
33

44
[tools]
5-
# Pinned to match .github/workflows/ci.yml so local builds match CI.
5+
# Single source of truth for tool versions: CI installs these via
6+
# jdx/mise-action, so local builds and CI can't drift.
67
# Node stays alongside bun because Metro and Gradle's react.gradle plugin
78
# shell out to `node` directly — bun is the package manager, not the runtime.
89
node = "22"
910
bun = "1.2"
10-
java = "zulu-17.0.19+10"
11+
java = "temurin-17.0.19+10"

0 commit comments

Comments
 (0)