TFS2015的CI集成

来源:互联网 发布:c语言数组合并 编辑:程序博客网 时间:2024/05/18 01:20

这篇应该是这个系列的最后一篇了

配置生成代理

配置dotnet cli环境

这步,需要在生成代理的机器上配置cli环境,与本地配置方法一致,可以自行Google

下载及参考地址:

https://www.microsoft.com/net/core#windows

配置环境变量

在生成代理的机器上

  1. 右键 此电脑 (我的电脑)

  2. 点 属性

  3. 点击 高级系统设置

  4. 点击 环境变量 按钮

  5. 新建 一个新的环境变量 名称为:ASP.NET_Core;值为:RC2;如图

  6. 重启生成代理

确认是否设置成功

  1. 登录TFS

  2. 点击 管理项目 (即 右上方的齿轮)

  3. 点击 DefaultCollection (或者你的其他团队项目名)

  4. 点击 代理队列

  5. 看到 代理 -> 功能中 有刚才设置的RC2,就算成功了,如图

此步,主要是对安装配置过RC2的代理进行区分,让TFS进行CI时能选择到有RC2环境的机器

生成定义

这里我们新建一条生成定义,用 空模板 就好

生成步骤

首先,我们需要通过cli把包还原出来

点击 添加生成步骤,实用工具 -> 命令行

设置项中

工具填:dotnet

参数填:restore

其实相当于命令 dotnet restore

接着,我们需要把nuget的包打包,由于涉及几个项目,我这里使用的是PowerShell

点击 添加生成步骤,实用工具 -> PowerShell

脚本文件名为:RunPack.ps1

内容为:

1
2
3
4
dotnet pack LSW.Weixin\src\LSW.Weixin -c release
dotnet pack LSW.Weixin\src\LSW.Weixin.MP -c release
dotnet pack LSW.Weixin\src\LSW.Weixin.MP.MvcExtension -c release
dotnet pack LSW.Weixin\src\LSW.Weixin.QY -c release

PS:LSW.Weixin\src\LSW.Weixin 这些是我的项目的存储库相对路径,project.json的对应文件夹,可参照修改。我这里完全是把PowerShell当批处理用了,如果有这方面路过的PowerShell大神看到,有好的建议,还请赐教

然后,需要对ASP.Net Core的项目进行发布,同样

点击 添加生成步骤,实用工具 -> PowerShell

脚本文件名为:RunPublish.ps1

内容为:

1
2
dotnet publish 微信企业号\src\分销系统 -r win8-x64 -c release
dotnet publish 微信企业号\src\微信企业号 -c release

同样需要修改对应的路径

这里还需要注意的是,由于项目名存在中文,这里的PowerShell脚本需要用 GBK 编码保存,用 UTF-8 编码的话会乱码报错

最后是添加 复制并发布生成项目 的生成步骤

这个和原来一样就不说了

PS:以上的步骤我没有使用 dotnet build 是因为 dotnet pack 和 dotnet publish 都会执行一次build操作,就没必要加这一步了

存储库设置

选自己对应项目的 Git 分支

常规设置

在常规设置选项卡中,增加一个RC2的需求条件,如图

其他选项

根据自己的喜好设置吧

测试生成定义

设置完成后点击 保存

然后点击 为生成排队 就可以测试一下生成定义了

其他补充

TFS的cli会把一些编译警告,当成错误,导致CI无法顺利通过

这里有两种处理办法

1、按标准修改代码,让警告不出现

2、修改project.json,忽略掉相应的警告,具体位置在 buildOptions 配置节 nowarn 下

1
2
3
4
5
"buildOptions" : {
     "emitEntryPoint" true ,
     "preserveCompilationContext" true ,
     "nowarn" : [  "CS0168" "CS0169" "CS1998" ]
},

CI完成后的自动发布Azure、FTP什么的这些没改,可以参考其他文章进行配置


相关文章:

  • ASP.NET Core 1.0 入门——了解一个空项目

  • ASP.NET Core 1.0 部署 HTTPS (.NET Framework 4.5.1)

  • .NET Core 1.0、ASP.NET Core 1.0和EF Core 1.0简介

  • 云服务器下ASP.NET Core 1.0环境搭建(包含mono与coreclr)

  • 使用VS Code开发ASP.NET Core 应用程序

  • dotnet run是如何启动asp.net core站点的

  • ASP.NET Core提供模块化Middleware组件

  • “dotnet restore"和"dotnet run"都做了些什么?

  • 探秘 dotnet run 如何运行 .NET Core 应用程序

  • .NET Portability Analyzer 已开源

  • ASP.NET Core的配置(1):读取配置信息

  • ASP.NET Core的配置(2):配置模型详解

  • .NET Core 1.0 RC2 历险之旅

  • 使用VS Code开发 调试.NET Core 应用程序

  • 让我们Core在一起:ASP.NET Core & .NET Core

  • .NET Core VS Code 环境配置

  • 官方博客明确了 .NET Core RC2/RTM 时间表

  • .NET Core全新的配置管理[共9篇]

  • 利用记事本创建一个ASP.NET Core RC2 MVC应用

  • 微软.NET 正式劈腿成功,横跨所有平台

  • .NET Core 1.0 CentOS7 尝试

  • 解读发布:.NET Core RC2 and .NET Core SDK Preview 1

  • [.NET Core].NET Core R2安装及示例教程


原文地址:http://blog.lishewen.com/post/to-upgrade-thenet-core-rc2-(4)-those-things-tfs2015-ci-integration


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注


原创粉丝点击