Skip to main content

max / goingson

1.9 KB · 39 lines History Blame Raw
1 // GoingsOn: Windows (x86_64) release recipe for Bento.
2 //
3 // UNSUPPORTED at launch: Windows binaries ship unsigned (code signing is blocked
4 // on the Azure certificate-history requirement, see deploy.md). This recipe is
5 // best-effort and has not been exercised end-to-end through Bento.
6 //
7 // Two Windows-specific deviations from the other recipes:
8 // - The checkout lives at a Windows path, NOT the unix repo() value, so this
9 // recipe hard-codes it and does not call repo().
10 // - Commands run through PowerShell over ssh; quoting is delicate. The
11 // `passwords.ps1` profile supplies the signing env (mirrors deploy.md).
12 // The .msi / NSIS .exe globs are handed to collect directly (windows-x86 is a
13 // remote host, so collect leaves the glob unquoted for the remote shell).
14
15 let h = build_host();
16 let v = version();
17 let win_repo = "C:/Users/me/Code/Apps/goingson";
18
19 step("checkout");
20 sh_ok(h, "powershell -Command \"cd " + win_repo + "; git pull --ff-only\"");
21
22 // Gate: no artifact is built from code that fails clippy or its tests. It runs
23 // on this target's own build host, so a break confined to one platform is
24 // caught where it would have shipped.
25 step("prebuild");
26 sh_ok(h, "powershell -Command \"cd " + win_repo + "; cargo clippy --workspace --all-targets " + feature_flags() + " -- -D warnings\"");
27 sh_ok(h, "powershell -Command \"cd " + win_repo + "; cargo test --workspace " + feature_flags() + "\"");
28
29 step("build");
30 sh_ok(h, "powershell -Command \". C:\\Users\\me\\.tauri\\passwords.ps1; " +
31 "$env:TAURI_SIGNING_PRIVATE_KEY='C:\\Users\\me\\.tauri\\goingson.key'; " +
32 "$env:TAURI_SIGNING_PRIVATE_KEY_PASSWORD=$env:GOINGSON_TAURI_PASSWORD; " +
33 "cd " + win_repo + "; cargo tauri build\"");
34
35 step("collect");
36 collect(h, win_repo + "/target/release/bundle/msi/*.msi", "goingson", v);
37 collect(h, win_repo + "/target/release/bundle/nsis/*-setup.exe", "goingson", v);
38 log("GoingsOn windows/x86_64 v" + v + " collected (unsigned, unsupported).");
39