Quote Windows release packaging paths
ci / test (push) Canceled after 0s
ci / fuzz-smoke (push) Canceled after 0s
ci / macos-client (macos-aarch64, macos-14) (push) Canceled after 0s
ci / macos-client (macos-x86_64, macos-13) (push) Canceled after 0s
ci / windows-client (push) Canceled after 0s
ci / package-release (linux-x86_64, ubuntu-latest, , , ) (push) Canceled after 0s
ci / package-release (macos-aarch64, macos-14, , , ) (push) Canceled after 0s
ci / package-release (macos-x86_64, macos-13, , , ) (push) Canceled after 0s
ci / package-release (windows-aarch64, windows-latest, aarch64, windows, aarch64-pc-windows-msvc) (push) Canceled after 0s
ci / package-release (windows-x86_64, windows-latest, , , ) (push) Canceled after 0s
ci / remote-bench (push) Canceled after 0s
ci / publish-gitea-release (push) Canceled after 0s

This commit is contained in:
DuProcess
2026-07-16 22:43:03 -04:00
parent 569a3e9ce5
commit 5a9d9df4ae
2 changed files with 9 additions and 1 deletions
+5 -1
View File
@@ -148,10 +148,14 @@ strip_bin() {
esac esac
} }
powershell_word() {
printf "'%s'" "$(printf '%s' "$1" | sed "s/'/''/g")"
}
powershell_compress_archive() { powershell_compress_archive() {
for ps in powershell.exe powershell pwsh.exe pwsh; do for ps in powershell.exe powershell pwsh.exe pwsh; do
if command -v "$ps" >/dev/null 2>&1; then if command -v "$ps" >/dev/null 2>&1; then
"$ps" -NoProfile -Command "Compress-Archive -Force -Path '$stage' -DestinationPath '$out_dir/$artifact'" "$ps" -NoProfile -Command "Compress-Archive -Force -LiteralPath $(powershell_word "$stage") -DestinationPath $(powershell_word "$out_dir/$artifact")"
return 0 return 0
fi fi
done done
+4
View File
@@ -559,8 +559,12 @@ fn package_release_maps_windows_cross_arch_targets() {
fn package_release_windows_zip_tries_classic_and_core_powershell() { fn package_release_windows_zip_tries_classic_and_core_powershell() {
let package = include_str!("../scripts/package-release.sh"); let package = include_str!("../scripts/package-release.sh");
assert!(package.contains("powershell_compress_archive()")); assert!(package.contains("powershell_compress_archive()"));
assert!(package.contains("powershell_word()"));
assert!(package.contains("sed \"s/'/''/g\""));
assert!(package.contains("for ps in powershell.exe powershell pwsh.exe pwsh; do")); assert!(package.contains("for ps in powershell.exe powershell pwsh.exe pwsh; do"));
assert!(package.contains("\"$ps\" -NoProfile -Command")); assert!(package.contains("\"$ps\" -NoProfile -Command"));
assert!(package.contains("Compress-Archive -Force -LiteralPath $(powershell_word \"$stage\")"));
assert!(package.contains("-DestinationPath $(powershell_word \"$out_dir/$artifact\")"));
assert!(package.contains("windows packaging requires PowerShell or zip")); assert!(package.contains("windows packaging requires PowerShell or zip"));
} }