Parallels executor + Win11 (Arm) stuck on "Creating new VM..."
Summary
Steps to reproduce
The Parallels executor is not functioning correctly.
- Create Windows 11 image via "Paralles->New->Get Windows 11 from Microsoft"
- Verify Parallels Tools is installed (it is)
- Install OpenSSH and PowerShell (as per https://docs.gitlab.com/runner/executors/virtualbox.html#use-native-openssh-and-powershell)
- Ensure that ssh is correctly configured and can log in to image with username & password
- Register runner
- Run a simple test job
.gitlab-ci.yml
TestWin:
script:
- echo Allo!
tags:
- us-build-vm-win
Actual behavior
When I attempt to run a simple test job, it hangs on "Creating new VM...".
VMs appear to be created properly. My base VM is called 'win11-base' and I see that the runner creates 'win11-base-template' and 'win11-base-runner-bm66aFkbQ-concurrent-1'.
While it's stuck on "Creating new VM...", if I run prlctl list win11-base-runner-bm66aFkbQ-concurrent-1 --info then I can see the IP for the machine and can successfully ssh in using the creds in config.toml.
Expected behavior
It should detect the VM is available and use it to execute the job.
Relevant logs and/or screenshots
job log
Running with gitlab-runner 17.1.0 (fe451d5a)
on us-build-mac-mini-1-parallels bm66aFkbQ, system ID: s_e80ae147e612
Preparing the "parallels" executor 01:06:45
Using Parallels 19.4.1 executor...
Creating new VM...
ERROR: Preparation failed: calling prlctl:
Will be retried in 3s ...
Using Parallels 19.4.1 executor...
Creating new VM...
ERROR: Preparation failed: calling prlctl:
Will be retried in 3s ...
Using Parallels 19.4.1 executor...
Creating new VM...
ERROR: Job failed: execution took longer than 1h0m0s seconds
Environment description
Custom installation
config.toml contents
concurrent = 3
check_interval = 3
connection_max_age = "15m0s"
shutdown_timeout = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "us-build-mac-mini-1-parallels"
url = "https://<company-gitlab-instance>"
id = 40218
token = "..."
token_obtained_at = 2024-07-12T22:01:24Z
token_expires_at = 0001-01-01T00:00:00Z
executor = "parallels"
log_level = "debug"
shell = "pwsh"
[runners.custom_build_dir]
[runners.cache]
MaxUploadedArchiveSize = 0
[runners.cache.s3]
[runners.cache.gcs]
[runners.cache.azure]
[runners.ssh]
username = "admin"
password = "admin"
port = "22"
disable_strict_host_key_checking = true
[runners.parallels]
base_name = "win11-base"
disable_snapshots = false
parallels_tools_version = "19.4.1"
Used GitLab Runner version
> gitlab-runner version
Runtime platform arch=arm64 os=darwin pid=13832 revision=fe451d5a version=17.1.0
Parallels version
Parallels Desktop 19 for Mac Pro Edition Version 19.4.1 (54985)
> prlctl --version
prlctl version 19.4.1 (54985)
Possible fixes
Edited by Chris Hardy