| 1 |
// audiofiles, Windows (x86_64) release recipe for Bento. |
| 2 |
// |
| 3 |
// UNSUPPORTED at launch: the MSI/EXE ship unsigned (Azure certificate blocker, |
| 4 |
// see docs/deploy.md). Best-effort, not exercised end-to-end through Bento. |
| 5 |
// |
| 6 |
// Built NATIVELY on windows-x86 via dist/build-msi-native.ps1 (WiX), the |
| 7 |
// no-cross-compile house rule rules out build-windows.sh's cargo-xwin path. The |
| 8 |
// checkout is at a Windows path (not repo()), and commands run through |
| 9 |
// PowerShell over ssh. Output: dist/Audiofiles_<version>_x86_64.msi (+ .exe). |
| 10 |
|
| 11 |
let h = build_host(); |
| 12 |
let v = version(); |
| 13 |
let win_repo = "C:/Users/me/Code/Apps/audiofiles"; |
| 14 |
|
| 15 |
step("checkout"); |
| 16 |
sh_ok(h, "powershell -Command \"cd " + win_repo + "; git pull --ff-only\""); |
| 17 |
|
| 18 |
// Gate: no artifact is built from code that fails clippy or its tests. It runs |
| 19 |
// on this target's own build host, so a break confined to one platform is |
| 20 |
// caught where it would have shipped. |
| 21 |
step("prebuild"); |
| 22 |
sh_ok(h, "powershell -Command \"cd " + win_repo + "; cargo clippy --workspace --all-targets " + feature_flags() + " -- -D warnings\""); |
| 23 |
sh_ok(h, "powershell -Command \"cd " + win_repo + "; cargo test --workspace " + feature_flags() + "\""); |
| 24 |
|
| 25 |
step("build"); |
| 26 |
sh_ok(h, "powershell -Command \"cd " + win_repo + "; pwsh -File dist\\build-msi-native.ps1\""); |
| 27 |
|
| 28 |
step("collect"); |
| 29 |
collect(h, win_repo + "/dist/*.msi", "audiofiles", v); |
| 30 |
collect(h, win_repo + "/dist/Audiofiles*.exe", "audiofiles", v); |
| 31 |
log("audiofiles windows/x86_64 v" + v + " collected (unsigned, unsupported)."); |
| 32 |
|