首页 > 解决方案 > WIndows Gitlab-runner:无法重新排队跑步者

问题描述

我有一个有2 个工作的管道。

我在具有调试模式的Windows上以超级用户身份启动用户并收到下一个输出:

Checking for jobs... received                       job=24173 repo_url=https://scm-01.oursite.com/theproject/theproject-tests.git runner=ub7wf5mg
Failed to requeue the runner                        builds=1 runner=ub7wf5mg
Running with gitlab-runner 12.8.0 (1b659122)        job=24173 project=789 runner=ub7wf5mg
  on vm14rkwEggplant ub7wf5mg                       job=24173 project=789 runner=ub7wf5mg
Shell configuration: environment: []
dockercommand:
- PowerShell
- -NoProfile
- -NoLogo
- -InputFormat
- text
- -OutputFormat
- text
- -NonInteractive
- -ExecutionPolicy
- Bypass
- -Command
- '-'
command: powershell
arguments:
- -noprofile
- -noninteractive
- -executionpolicy
- Bypass
- -command
passfile: true
extension: ps1
  job=24173 project=789 runner=ub7wf5mg
Using Shell executor...                             job=24173 project=789 runner=ub7wf5mg
Waiting for signals...                              job=24173 project=789 runner=ub7wf5mg
No referees configured                              job=24173 project=789 runner=ub7wf5mg
Executing build stage                               build_stage=prepare_script job=24173 project=789 runner=ub7wf5mg
Executing build stage                               build_stage=get_sources job=24173 project=789 runner=ub7wf5mg
Feeding runners to channel                          builds=1
WARNING: Failed to parse "X-GitLab-Trace-Update-Interval" header  error=strconv.Atoi: parsing "": invalid syntax header-value= job=24173 runner=ub7wf5mg
Appending trace to coordinator... ok                code=202 job=24173 job-log=0-536 job-status=running runner=ub7wf5mg sent-log=0-535 status=202 Accepted update-interval=0s
Executing build stage                               build_stage=upload_artifacts_on_failure job=24173 project=789 runner=ub7wf5mg
Skipping referees execution                         job=24173 project=789 runner=ub7wf5mg
WARNING: Job failed: exit status 1                  duration=4.9592837s job=24173 project=789 runner=ub7wf5mg
WARNING: Failed to parse "X-GitLab-Trace-Update-Interval" header  error=strconv.Atoi: parsing "": invalid syntax header-value= job=24173 runner=ub7wf5mg
Appending trace to coordinator... ok                code=202 job=24173 job-log=0-2526 job-status=running runner=ub7wf5mg sent-log=536-2525 status=202 Accepted update-interval=0s
Submitting job to coordinator... ok                 code=200 job=24173 job-status= runner=ub7wf5mg
WARNING: Failed to process runner                   builds=0 error=exit status 1 executor=shell runner=ub7wf5mg

接下来是 gitlab 中管道的输出:

Running with gitlab-runner 12.8.0 (1b659122)
  on vm14rkwEggplant ub7wf5mg
Using Shell executor...
Running on KS-IDE-TS4...
Fetching changes with git depth set to 50...
Reinitialized existing Git repository in C:/GitLab-Runner/builds/ub7wf5mg/0/ourproject/ourproject-winappdriver-tests/.git/
From https://scm-01.ourproject.com/ourproject/ourproject-winappdriver-tests
 * [new ref]         refs/pipelines/5813 -> refs/pipelines/5813
Checking out c924c09b as master...
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/Microsoft.CodeAnalysis.CSharp.dll: Invalid argument
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/Microsoft.CodeAnalysis.dll: Invalid argument
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/Microsoft.CodeAnalysis.VisualBasic.dll: Invalid argument
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/Microsoft.DiaSymReader.Native.amd64.dll: Invalid argument
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/System.Buffers.dll: Invalid argument
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/System.Collections.Immutable.dll: Permission denied
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/System.Memory.dll: Permission denied
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/System.Numerics.Vectors.dll: Permission denied
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/System.Reflection.Metadata.dll: Permission denied
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/System.Runtime.CompilerServices.Unsafe.dll: Permission denied
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/System.Threading.Tasks.Extensions.dll: Permission denied
warning: failed to remove packages/Microsoft.Net.Compilers.Toolset.3.4.0/tasks/net472/VBCSCompiler.exe: Invalid argument
ERROR: Job failed: exit status 1

如果我重新启动跑步者,第一份工作变得成功,但第二份工作再次失败,并出现非常类似的错误。

git版本是 git版本2.25.1.windows.1

这个问题有什么解决方法吗?如果跑步者降级可以帮助我吗?

标签: windowsgitlabgitlab-cigitlab-ci-runner

解决方案


所以问题是我的存储库中有一个正在运行的进程。首先,我手动杀死它,工作开始正常工作。然后我从我的解决方案中完全删除了这个包,并开始使用相同的文件,但来自存储库之外。

它是VBCSCompiler.exe文件。

要尝试,您可以先从 runner 或通过 cmd 命令手动杀死它:

 tasklist | find /i "VBCSCompiler.exe" && taskkill /im VBCSCompiler.exe /F \|| echo process "VBCSCompiler.exe" not running.

然后我删除了 nuget 包 Microsoft.Net.Compilers.Toolset,因此这个进程路径被更改为

C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin\Roslyn


推荐阅读