Gitlab-runner Virtualbox Windows10 failing to connect with Reason ()

Hey need some help here with getting gitlab-runner working with a Windows 10 Virtualbox. I am using a gitlab-runner user on a Ubuntu 16.04 to run the gitlab-runner application and then submit a CI job from gitlab to it. However every time I try to do it it fails with an empty reason. I’m assuming this is realted to SSH somehow but I cannot figure out what it is. I have tested the snapshot I’m using independently to verify that the SSH server is running and my user can connect properly which it does. So I know the general setup is correct. But due to the non-useful error message I am completely stunned as to what could be going wrong. Any pointers will be helpful.

$> gitlab-runner --version
Version: 11.7.0
Git revision: 8bb608ff
Git branch: 11-7-stable
GO version: go1.8.7
Built: 2019-01-22T11:46:13+0000
OS/Arch: linux/amd64

This is my config.toml:

concurrent = 1
check_interval = 0

[session_server]
session_timeout = 1800

[[runners]]
name = “u1604-64-windows-gitlab-runner”
url = “https://gitlab-master.local.com/
token = “”
executor = “virtualbox”
[runners.ssh]
user = “builder”
password = “test123”
[runners.virtualbox]
base_name = “Windows10-VM”
base_snapshot = “gitlab-runner-snapshot”
disable_snapshots = false
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]

I’m running the gitlab-runner as the local user gitlab-runner via:

gitlab-runner@u1604-64:~$ gitlab-runner -l debug run
Runtime platform arch=amd64 os=linux pid=28114 revision=8bb608ff version=11.7.0
Starting multi-runner from /home/gitlab-runner/.gitlab-runner/config.toml … builds=0
Checking runtime mode GOOS=linux uid=1001
WARNING: Running in user-mode.
WARNING: Use sudo for system-mode:
WARNING: $ sudo gitlab-runner…

Configuration loaded builds=0
listenaddress: “”
sessionserver:
listenaddress: “”
advertiseaddress: “”
sessiontimeout: 1800
metricsserveraddress: “”
concurrent: 1
checkinterval: 0
loglevel: null
logformat: null
user: “”
runners:
- name: u1604-64-windows-gitlab-runner
limit: 0
outputlimit: 0
requestconcurrency: 0
runnercredentials:
url: https://gitlab-master.local.com/
token:
tlscafile: “”
tlscertfile: “”
tlskeyfile: “”
runnersettings:
executor: virtualbox
buildsdir: “”
cachedir: “”
cloneurl: “”
environment:
preclonescript: “”
prebuildscript: “”
postbuildscript: “”
shell: “”
ssh:
user: builder
password: test123
host: “”
port: “”
identityfile: “”
docker: null
parallels: null
virtualbox:
basename: Windows10-VM
basesnapshot: gitlab-runner-snapshot
disablesnapshots: false
cache:
type: “”
path: “”
shared: false
s3:
serveraddress: “”
accesskey: “”
secretkey: “”
bucketname: “”
bucketlocation: “”
insecure: false
gcs:
cachegcscredentials:
accessid: “”
privatekey: “”
credentialsfile: “”
bucketname: “”
s3cachepath: “”
cacheshared: false
serveraddress: “”
accesskey: “”
secretkey: “”
bucketname: “”
bucketlocation: “”
insecure: false
machine: null
kubernetes: null
sentrydsn: null
modtime: 2019-02-26T16:27:47.404780201-08:00
loaded: true
builds=0
Waiting for stop signal builds=0
Listen address not defined, metrics server disabled builds=0
Listen address not defined, session server disabled builds=0
Feeding runners to channel builds=0
Starting worker builds=0 worker=0
Dialing: tcp gitlab-master.local.com:443
Feeding runners to channel builds=0
Checking for jobs… nothing runner=G8FjLty2
Feeding runners to channel builds=0
Checking for jobs… received job=5658182 repo_url=https://gitlab-master.local.com/clara-cvi-demo/Supra.git runner=G8FjLty2
Failed to requeue the runner: builds=1 runner=G8FjLty2
Running with gitlab-runner 11.7.0 (8bb608ff) job=5658182 project=5538 runner=G8FjLty2
on u1604-64-windows-gitlab-runner G8FjLty2 job=5658182 project=5538 runner=G8FjLty2
Shell configuration: environment:
dockercommand:
- sh
- -c
- “if [ -x /usr/local/bin/bash ]; then\n\texec /usr/local/bin/bash --login\nelif [
-x /usr/bin/bash ]; then\n\texec /usr/bin/bash --login\nelif [ -x /bin/bash ]; then\n\texec
/bin/bash --login\nelif [ -x /usr/local/bin/sh ]; then\n\texec /usr/local/bin/sh
–login\nelif [ -x /usr/bin/sh ]; then\n\texec /usr/bin/sh --login\nelif [ -x /bin/sh
]; then\n\texec /bin/sh --login\nelif [ -x /busybox/sh ]; then\n\texec /busybox/sh
–login\nelse\n\techo shell not found\n\texit 1\nfi\n\n”
command: bash
arguments:
- --login
passfile: false
extension: “”
job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“–version”}
Using VirtualBox version 5.1.38_Ubuntur122592 executor… job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“showvminfo”, “Windows10-VM-runner-G8FjLty2-concurrent-0”}
Executing VBoxManageOutput: string{“showvminfo”, “Windows10-VM-runner-G8FjLty2-concurrent-0”}
Creating new VM… job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“showvminfo”, “Windows10-VM-runner-G8FjLty2-concurrent-0”, “–machinereadable”}
Executing VBoxManageOutput: string{“unregistervm”, “Windows10-VM-runner-G8FjLty2-concurrent-0”}
Executing VBoxManageOutput: string{“showvminfo”, “Windows10-VM-runner-G8FjLty2-concurrent-0”}
Executing VBoxManageOutput: string{“snapshot”, “Windows10-VM”, “list”, “–machinereadable”}
Creating testing VM from VM Windows10-VM snapshot gitlab-runner-snapshot-running … job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“clonevm”, “Windows10-VM”, “–mode”, “machine”, “–name”, “Windows10-VM-runner-G8FjLty2-concurrent-0”, “–register”, “–snapshot”, “gitlab-runner-snapshot-running”, “–options”, “link”}
Feeding runners to channel builds=1
Appending trace to coordinator… ok code=202 job=5658182 job-log=0-210 job-status=running runner=G8FjLty2 sent-log=0-209 status=202 Accepted
Identify SSH Port… job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“showvminfo”, “Windows10-VM-runner-G8FjLty2-concurrent-0”}
Creating localhost ssh forwarding… job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“list”, “vms”, “-l”}
Executing VBoxManageOutput: string{“modifyvm”, “Windows10-VM-runner-G8FjLty2-concurrent-0”, “–natpf1”, “guestssh,tcp,127.0.0.1,33993,22”}
Using local 33993 SSH port to connect to VM… job=5658182 project=5538 runner=G8FjLty2
Bootstraping VM… job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“startvm”, “Windows10-VM-runner-G8FjLty2-concurrent-0”, “–type”, “headless”}
Waiting for VM to become responsive… job=5658182 project=5538 runner=G8FjLty2
Connecting to SSH… job=5658182 project=5538 runner=G8FjLty2
Executing VBoxManageOutput: string{“controlvm”, “Windows10-VM-runner-G8FjLty2-concurrent-0”, “poweroff”}
Executing VBoxManageOutput: string{“unregistervm”, “Windows10-VM-runner-G8FjLty2-concurrent-0”, “–delete”}
WARNING: Preparation failed: Process exited with: 1. Reason was: () job=5658182 project=5538 runner=G8FjLty2
Will be retried in 3s … job=5658182 project=5538 runner=G8FjLty2

Is there any other way to debug this?

Thanks!