14.3.2 Windows Docker Executor - error during hcsshim::System::CreateProcess


AMI: ami-02d1f8062b6ef46a5 (Windows_Server-2019-English-Core-ContainersLatest-2021.09.15)
Runner: https://gitlab-runner-downloads.s3.amazonaws.com/v14.3.2/binaries/gitlab-runner-windows-amd64.zip

PS C:\Gitlab-Runner> [System.Environment]::OSVersion.Version

Major  Minor  Build  Revision
-----  -----  -----  --------
10     0      17763  0

PS C:\Gitlab-Runner> docker version
Client: Mirantis Container Runtime
 Version:           20.10.7
 API version:       1.41
 Go version:        go1.13.15
 Git commit:        40ef3b6
 Built:             08/19/2021 18:54:26
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

What happened

Registration and install were successful.
Went to run a pipeline and received this error:

ERROR: Job failed (system failure): Error response from daemon: container 0af81a338701780d1e93b72e210a5957ab315a0f0db53cd89d7a6423458c90bf encountered an error during hcsshim::System::CreateProcess: failure in a Windows system call: The system cannot find the file specified. (0x2) (exec.go:57:1s)

Since I am using an updated AMI I figured maybe that’s where the issue is. So I uninstalled 14.3.2 and installed my previous runner 12.10.2 and just like that my pipelines were working again.

So what gives?? Is 14.3.2 incompatible with this windows build?

The issue was that my shell was configured for pwsh instead of powershell. I’m not sure why the default shell was changed.

Hi, It seams that the default shell has changed from powershell to pwsh in gitLab-Runner 14.0 and later: Types of shells supported by GitLab Runner | GitLab

Were did you changed the default shell in your environment?

I installed pwsh in my docker image with: RUN choco install -y pwsh