Prompt step by step for the missing base image, ISO, npm deps and Chromium
Offer to build the base QCOW2, download the ISO, run npm ci and install Chromium (from the npmmirror mirror by default). Let Playwright locate its own Chromium so macOS works. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b37d1e002c
commit
1476b4a3de
3 files changed
+77
-13
No files matched your search
@@ -31,6 +31,8 @@ set -euo pipefail
|
||||
|
||||
images_dir="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
|
||||
downloader="${images_dir}/download-images.sh"
|
||||
# Path lookups below must not offer to run this script again.
|
||||
export VM_IMAGE_NO_PROMPT=1
|
||||
win_dir="${images_dir}/windows11"
|
||||
|
||||
usage() {
|
||||
@@ -116,6 +118,17 @@ if ((!from_img)); then
|
||||
|| die "install socat or nc (it presses a key at the boot prompt of the ISO)."
|
||||
fi
|
||||
|
||||
# Without the ISO, offer to download it (needs a terminal).
|
||||
if [[ -z "${WIN11_VM_INSTALL_ISO:-}" ]] && ! "$downloader" --print-path windows11 --iso >/dev/null 2>&1; then
|
||||
"$downloader" --print-path windows11 --iso >&2 || true
|
||||
if { : </dev/tty >/dev/tty; } 2>/dev/null; then
|
||||
printf 'Download the Windows 11 ISO now? [y/N] ' >/dev/tty
|
||||
read -r answer </dev/tty || answer=
|
||||
[[ "$answer" == [yY] || "$answer" == [yY][eE][sS] ]] || exit 1
|
||||
"$downloader" windows11 || exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
output="${output:-$("$downloader" --print-path windows11)}"
|
||||
if [[ -e "$output" && $force -eq 0 ]]; then
|
||||
die "${output} exists (it may be the backing file of existing VM disks); use --force or another OUTPUT."
|
||||
|
||||
Reference in new issue
Block a user