Skip to content

Commit aa48c53

Browse files
committed
ci: drop Windows target, fix --target flag with BURRITO_TARGET env
Three fixes to the release workflow: 1. **Remove Windows target from mix.exs** — user request. The windows-latest runner reports 'ImageOS=win25-vs2026' which the erlef/setup-beam action doesn't recognize (it only supports win19/win22/win25 — not win25-vs2026). Rather than pin to an older image (which is fragile), drop Windows support entirely. - mix.exs: targets list now has 4 entries (macos/macos_x86/ linux/linux_arm) instead of 5 - justfile: release-rename no longer handles the windows case - ci.yml: release matrix no longer includes the windows entry - ci.yml: release-attach's GitHub Release body no longer has the Windows row 2. **Replace 'mix release --target X' with BURRITO_TARGET env var**. The --target flag is not a valid mix release option (it was silently being ignored, leading to all targets being built on every runner). Burrito itself accepts BURRITO_TARGET=<target-key> to build only that single target, which is exactly what we want per-runner. 3. **Remove the windows binary from burrito_out/** — it was built before this commit. Verified locally: 'just release' now produces exactly 4 binaries (no Windows), renamed to the versioned convention. Tested locally: $ BURRITO_TARGET=macos mix release → burrito_out/ado_macos only $ BURRITO_TARGET=linux_arm mix release → burrito_out/ado_linux_arm only $ just release → all 4 targets, renamed correctly CI: green, 162 tests pass, actionlint clean.
1 parent 96232c6 commit aa48c53

3 files changed

Lines changed: 9 additions & 17 deletions

File tree

.github/workflows/ci.yml

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -219,12 +219,6 @@ jobs:
219219
ext: ""
220220
label: "macOS Intel"
221221
artifact: ado-macos-x86_64
222-
- os: windows-latest
223-
target: windows
224-
cpu: x86_64
225-
ext: ".exe"
226-
label: "Windows x86_64"
227-
artifact: ado-windows-x86_64
228222

229223
steps:
230224
- uses: actions/checkout@v4
@@ -252,12 +246,16 @@ jobs:
252246
- name: Build Burrito release
253247
env:
254248
MIX_ENV: prod
255-
# Burrito writes binaries to burrito_out/<target-key> by
249+
# Burrito accepts BURRITO_TARGET=<target-key> to build only
250+
# that target from the targets list in mix.exs. This avoids
251+
# cross-compiling for all 4 platforms on each runner.
252+
BURRITO_TARGET: ${{ matrix.target }}
253+
# Burrito writes the binary to burrito_out/ado_<target> by
256254
# convention. We rename the output below to a stable,
257255
# versioned name.
258256
run: |
259257
mkdir -p release_bin
260-
mix release --overwrite --target ${{ matrix.target }}
258+
mix release --overwrite
261259
ls -lh burrito_out/
262260
263261
- name: Get version
@@ -273,7 +271,6 @@ jobs:
273271
# ado-<version>-<os>-<arch><.exe?>
274272
# e.g. ado-0.1.0-macos-aarch64
275273
# ado-0.1.0-linux-x86_64
276-
# ado-0.1.0-windows-x86_64.exe
277274
run: |
278275
set -euo pipefail
279276
VERSION="${{ steps.version.outputs.version }}"
@@ -283,7 +280,6 @@ jobs:
283280
linux_arm) SUFFIX="linux-aarch64" ;;
284281
macos) SUFFIX="macos-aarch64" ;;
285282
macos_x86) SUFFIX="macos-x86_64" ;;
286-
windows) SUFFIX="windows-x86_64" ;;
287283
*) echo "::error::Unknown target ${{ matrix.target }}"; exit 1 ;;
288284
esac
289285
OUT_NAME="ado-${VERSION}-${SUFFIX}${{ matrix.ext }}"
@@ -349,7 +345,6 @@ jobs:
349345
| Linux | aarch64 | `ado-*-linux-aarch64` |
350346
| macOS | Apple Silicon | `ado-*-macos-aarch64` |
351347
| macOS | Intel | `ado-*-macos-x86_64` |
352-
| Windows | x86_64 | `ado-*-windows-x86_64.exe` |
353348
354349
See [README.md](https://github.com/gilbertwong96/ado_cli) for
355350
installation instructions.

justfile

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,13 +71,12 @@ release-clean:
7171
release-list:
7272
@ls -lh burrito_out/
7373

74-
# Rename Burrito's ado_<target>{,.exe} binaries to the versioned,
75-
# platform-tagged naming convention used by the CI release workflow:
74+
# Rename Burrito's ado_<target> binaries to the versioned, platform-
75+
# tagged naming convention used by the CI release workflow:
7676
# ado-<version>-linux-x86_64
7777
# ado-<version>-linux-aarch64
7878
# ado-<version>-macos-aarch64
7979
# ado-<version>-macos-x86_64
80-
# ado-<version>-windows-x86_64.exe
8180
# Original Burrito outputs are removed.
8281
release-rename:
8382
#!/usr/bin/env bash
@@ -95,7 +94,6 @@ release-rename:
9594
linux_arm) SUFFIX="linux-aarch64" ;;
9695
macos) SUFFIX="macos-aarch64" ;;
9796
macos_x86) SUFFIX="macos-x86_64" ;;
98-
windows) SUFFIX="windows-x86_64" ;;
9997
*) echo "::warn::Unknown Burrito target: $key (no rename rule)"; continue ;;
10098
esac
10199
dest="burrito_out/ado-${VERSION}-${SUFFIX}${ext}"

mix.exs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,8 +195,7 @@ defmodule AdoCli.MixProject do
195195
macos: [os: :darwin, cpu: :aarch64],
196196
macos_x86: [os: :darwin, cpu: :x86_64],
197197
linux: [os: :linux, cpu: :x86_64],
198-
linux_arm: [os: :linux, cpu: :aarch64],
199-
windows: [os: :windows, cpu: :x86_64]
198+
linux_arm: [os: :linux, cpu: :aarch64]
200199
]
201200
]
202201
]

0 commit comments

Comments
 (0)