如何在 Travis CI 上构建 Visual Studio 2019 项目?

How can I build Visual Studio 2019 projects on Travis CI?

Travis CI 最近添加了一个 Windows OS option to its build system. Unfortunately, the preinstalled packages 仅包括 Visual Studio 2017.

如何在 Travis 上构建 Visual Studio 2019 项目(例如 .Net Core 3.1 和 v142 构建工具项目)?

使用更新的构建工具的关键是 Chocolatey,Windows 包管理器。只要该工具集在 Chocolatey 上可用,您就可以将其安装在您的 Travis VM 上。

对于 .Net Core,这意味着安装 dotnetcore-sdk 包。

对于 VC++ 构建工具,有 visualstudio2019buildtools package, but note you will have to opt in to the Microsoft.VisualStudio.Component.VC.Tools.x86.x64 feature. See below for syntax. A full list of features is available in the Build Tools component directory.

这是包含 C++ 项目、.Net Standard 2.0 项目和 .Net Core 3.1 项目的 VS 2019 解决方案的完整 .travis.yml 文件。测试项目使用非托管 DLL。

os: windows
language: cpp
env:
  - MSBUILD_PATH="C:\Program Files (x86)\Microsoft Visual Studio19\BuildTools\MSBuild\Current\Bin"
install:
  - choco install visualstudio2019buildtools --package-parameters "--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64"
  - choco install dotnetcore-sdk
  - dotnet restore
script:
  - export PATH=$MSBUILD_PATH:$PATH
  - MSBuild.exe -p:Configuration=Release -p:Platform=x64 CppProject/CppProject.vcxproj
  - dotnet build --configuration Release
  - dotnet test DotNetProject.Tests/bin/Release/netcoreapp3.1/DotNetProject.Tests.dll