有没有办法构建一个在Travis CI中具有.Net Core和.Net Framework项目的VS2017解决方案?

时间:2017-12-14 00:52:28

标签: asp.net .net-core travis-ci .net-framework-version travis-ci-cli

我正在尝试使用.Net Core和.Net Framework两种项目在Travis CI中构建解决方案,但我还没有实现它,它只能构建一个只有.Net Framework或.Net的解决方案核心项目,但在同一解决方案中不适用。

如果有人已经处理过同样的问题并且可以帮助我,我感激不尽。

谢谢!

2 个答案:

答案 0 :(得分:1)

我为.Net Framework项目创建了一个标准版本,为了在同一个解决方案中构建.Net Core项目,我刚刚创建了一些这样的构建后命令:

dotnet restore EFCore.DbContextFactory.Examples.Data/EFCore.DbContextFactory.Examples.Data.csproj --verbosity m

dotnet restore EFCore.DbContextFactory.Examples.WebApi/EFCore.DbContextFactory.Examples.WebApi.csproj --verbosity m

dotnet restore EFCore.DbContextFactory/EFCore.DbContextFactory.csproj --verbosity m

dotnet publish EFCore.DbContextFactory.Examples.Data/EFCore.DbContextFactory.Examples.Data.csproj

dotnet publish EFCore.DbContextFactory.Examples.WebApi/EFCore.DbContextFactory.Examples.WebApi.csproj

dotnet publish EFCore.DbContextFactory/EFCore.DbContextFactory.csproj

然后对于单元测试,我使用该命令执行测试并生成结果文件:

dotnet test  EF.DbContextFactory.UnitTest.Data\EF.DbContextFactory.UnitTest.Data.csproj --logger "trx;LogFileName=output.trx"

最后,我在appveyor(Powershell)上发布测试结果:

$wc = New-Object 'System.Net.WebClient'
$wc.UploadFile("https://ci.appveyor.com/api/testresults/mstest/$($env:APPVEYOR_JOB_ID)", (Resolve-Path EF.DbContextFactory.UnitTest.Data\\TestResults\output.trx))

就是这样。 BTW为了在构建脚本之前恢复nuget包:

nuget restore

答案 1 :(得分:0)

查看appveyor(https://www.appveyor.com/),Windows构建的CI服务