GitLab CE - 如何在运行器上加载 .net(核心)构建环境?

问题描述 投票:0回答:1

我使用 GitLab CE 作为我们的源代码控制系统。它是本地部署的,但已更新到最新版本。

我有一个配置为构建 .net 项目的 Runner。

我有一个想要构建的 dotNet Core 项目。我遇到的问题是加载 .net 构建环境。我正在尝试运行它来建立环境:

`- 'cmd /K "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\VsMSBuildCmd.bat"'

执行正确,我得到以下输出:

$ cmd /K "C:\Program Files ^(x86^)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\VsMSBuildCmd.bat"
**********************************************************************
** Visual Studio 2017 MSBuild Command Prompt
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
C:\GitLab-Runner\builds\352e1762\0\online\WebApp>$ nuget restore src/Online-WebApp.sln
MSBuild auto-detection: using msbuild version '15.5.179.9764' from 'C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\bin'.
...rest removed...

问题是当它获取 Yml 中的作业步骤时,

msbuild
命令被报告为无法识别。

这是完整的 YAML。

请注意,手动设置

PATH
可以找到
msbuild
....

variables:
  DATABASE_URL: "example=not-real" #just to show this is an option; https://docs.gitlab.com/ce/ci/variables/README.html

stages:
  - build

before_script:
 #- 'PATH=%PATH%;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin'
 #- 'cmd /K "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\VsDevCmd.bat"'
 #- 'cmd /K "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\LaunchDevCmd.bat"'
 - 'cmd /K "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\VsMSBuildCmd.bat"'
 - 'nuget restore src/Online-WebApp.sln'

# What is important, is that each job is run independently from each other. "build" is a job.
build:
 stage: build
 script:
  - 'msbuild src/Online-WebApp.sln /t:Clean,ReBuild /p:Configuration=Release;Platform="Any CPU"'
  - 'dotnet pack src/Online-WebApp/Online-WebApp.csproj -c Release -v d --output nupkgs --no-build'
 only:
  - master
.net-core gitlab-ci
1个回答
0
投票

在 before_script 部分不要使用 cmd /k,而是使用“call”。

例如:

'调用“C:\Program Files (x86)\Microsoft Visual Studio�7\BuildTools\Common7\Tools\VsMSBuildCmd.bat”'

© www.soinside.com 2019 - 2024. All rights reserved.