1212 runs-on : ubuntu-latest
1313 permissions :
1414 contents : write
15+ env :
16+ # Build the setup-ui in a dedicated step (below) so the cargo build doesn't
17+ # depend on pnpm being resolvable on PATH from build.rs.
18+ DISCRAKT_SKIP_UI_BUILD : " 1"
1519
1620 steps :
1721 - name : Checkout
4145 - name : Set up Node and pnpm
4246 uses : jdx/mise-action@v2
4347
48+ - name : Build setup-ui
49+ shell : bash
50+ working-directory : setup-ui
51+ run : |
52+ mise exec -- pnpm install --frozen-lockfile
53+ mise exec -- pnpm run build
54+
4455 - name : Build amd64
4556 run : cargo build --release
4657
@@ -138,6 +149,10 @@ jobs:
138149 runs-on : windows-latest
139150 permissions :
140151 contents : write
152+ env :
153+ # Build the setup-ui in a dedicated step (below); on Windows the mise shims
154+ # aren't on PATH for build.rs, so let cargo reuse the prebuilt dist instead.
155+ DISCRAKT_SKIP_UI_BUILD : " 1"
141156
142157 steps :
143158 - name : Checkout
@@ -161,6 +176,13 @@ jobs:
161176 - name : Set up Node and pnpm
162177 uses : jdx/mise-action@v2
163178
179+ - name : Build setup-ui
180+ shell : bash
181+ working-directory : setup-ui
182+ run : |
183+ mise exec -- pnpm install --frozen-lockfile
184+ mise exec -- pnpm run build
185+
164186 - name : Build win64
165187 env :
166188 DISCRAKT_VERSION : ${{ steps.version.outputs.VERSION }}
@@ -196,6 +218,9 @@ jobs:
196218 contents : write
197219 env :
198220 MACOSX_DEPLOYMENT_TARGET : " 10.13"
221+ # Build the setup-ui in a dedicated step (below) so the per-target cargo
222+ # builds reuse one prebuilt dist instead of invoking pnpm from build.rs.
223+ DISCRAKT_SKIP_UI_BUILD : " 1"
199224
200225 steps :
201226 - name : Checkout
@@ -219,6 +244,13 @@ jobs:
219244 - name : Set up Node and pnpm
220245 uses : jdx/mise-action@v2
221246
247+ - name : Build setup-ui
248+ shell : bash
249+ working-directory : setup-ui
250+ run : |
251+ mise exec -- pnpm install --frozen-lockfile
252+ mise exec -- pnpm run build
253+
222254 - name : Build arm64 (Apple Silicon)
223255 run : cargo build --release --target=aarch64-apple-darwin
224256
@@ -438,6 +470,8 @@ jobs:
438470
439471 update-winget :
440472 needs : publish-win
473+ # Skip package-manager updates for pre-releases (e.g. v4.0.0-beta.1).
474+ if : ${{ !github.event.release.prerelease }}
441475 runs-on : ubuntu-latest
442476
443477 steps :
@@ -450,6 +484,8 @@ jobs:
450484
451485 update-homebrew :
452486 needs : publish-macos
487+ # Skip package-manager updates for pre-releases (e.g. v4.0.0-beta.1).
488+ if : ${{ !github.event.release.prerelease }}
453489 runs-on : ubuntu-latest
454490
455491 steps :
0 commit comments