TeamCity : .NET Core 插件

笔者在《TeamCity : 配置 Build 过程》一文中提到 "TeamCity 内置支持几乎所有的 build 类型"。在当今这个软件语言和各种框架飞速发展的时代,要想支持所有的 build 类型显然是不可能的。比如 TeamCity 就没有内置对 .NET Core build 类型的支持,所以我们在《TeamCity : 配置第一个工程》一文中使用了 Command Line 类型(command line 类型可以搞定一切!),然后在脚本里手动调用了编译命令:

dotnet restore
dotnet build

最近,TeamCity 官方通过插件支持了 .NET Core build(Build, test and deploy .NET Core projects with TeamCity)。既然可以用更加优雅的方式来编译 .NET Core 程序了就让我们一起试试吧!

安装插件

请从 .NET Core Support 下载插件。

以管理员权限进入 Plugins List 页面,点击上方的 "Upload plugin zip":

然后选择上传已下载的插件:

上传完成后,文件会被放在服务器上的 plugins 目录下:

接下来需要重启 TeamCity 服务,然后就能看到新安装的插件了:

现在我们再去创建一个 build 步骤,就可以选择 Runner type 为 ".NET Core (dotnet)" 了:

.NET Core 插件支持的命令有:build, pack, publish, restore, test。下面我们将详细介绍如何配置这些不同的命令类型。

Restore

下载项目依赖的包。这个命令有很多的参数,比如您可以指定为哪个项目下载包,也可以指定从哪个源进行下载或者是把下载到的包放在哪个路径下。如果 UI 中没有您要的设置,您还可以指定一个命令行参数:

通过命令行参数您就可以无所不能了!

Build

编译项目,允许您指定 framework,runtime 等信息。当然也可以指定编译完成后的输出目录,还有万能的命令行参数!

Test

使用 xUnit framework 能够轻松的在 TeamCity 中集成您的 .NET Core 单元测试。要运行项目中的单元测试,参数的设置和其它命令差不多,下面是单元测试的结果:

Pack

要想把项目发布到 NuGet,首先要生成 NuGet 包。直接使用 Pack 命令就可以了,它会把项目打包成带有 nupkg 后缀的包:

Publish

Publish 命令把应用程序及其所有依赖项打包到文件夹,准备进行发布。它会编译应用程序,读取 project.json 文件中指定的所有依赖项并将生成的文件集发布到目录中。
根据可移植应用的类型,生成的目录包含以下内容:
1.    可移植应用程序 – 应用程序的中间语言(IL) 代码和应用程序的所有托管依赖项。
2.    独立应用程序 – 除上述内容外,还包括目标平台的完整运行时。
需要注意的是一定要为 publish 指定 Framework 和 Runtime:

时间: 2024-10-20 22:23:57

TeamCity : .NET Core 插件的相关文章

Qt Creator插件工作流程代码走读

Qt Creator有个很风骚的插件管理器PluginManager,还有个很骚包的插件说明PluginSpec.基本上,所有的Qt程序的入口都是传统的C程序一样,代码流程从main()函数开始.  在main()中,先初始化用于国际化的translator,然后获取程序配置settings,接着就在栈上创建了PluginManager对象,之后为PluginManager设置搜索用的文件扩展名pluginspec,设置配置,再设置插件搜索路径.  设置好插件搜索路径后,PluginManage

在asp.net core中使用NLog

第一步:nuget  引入  NLog.Web.AspNetCore 4.5+ 第二步:放入nlog.config <?xml version="1.0" encoding="utf-8" ?><nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&qu

eclipse安装zylin embedded cdt失败解决办法

最近再搞嵌入式开发,之前用惯了IDE调试单片机的那种方式,开发2440和am3358驱动时候无法方便的查看寄存器和变量,憋的抓耳挠腮,不爽得很,没有可视化环境进行实时调试观察,太特么蛋疼了.感觉这种情况老外应该会有解决方案,在网上找了几天,果不其然,有用ubuntu+eclipse+openocd开发嵌入式程序,调试uboot和裸机程序的的,具体思路和原理,我就不做搬运工了,搬来搬去也没啥意思,现在网上充斥着各种平台博客,内容几乎完全一样,大家随便搜索一下就可以找到,这里只分享下无法解决的情况.

wordpress的系统卡

转自:http://zhidao.baidu.com/link?url=MWLBCFia4l5O5F271Ib0AE30-bpdo6wS2ntWrA8j49HLNQHjf0V0IQimSHaDwAwC5h0WlVD3-YHFu-0FaiyCdxp5y-qhW7z52h9BtublvEC 您好!wordpress 是php程序,强烈建议使用linux系统的服务器.后台慢可能这是由于Wordpress后台外链加载了谷歌字体(代码位置在wordpress\wp-includes\script-load

WordPress程序打开速度慢的三种解决方法

WordPress程序打开速度慢的三种解决方法 最近好多用户反应,在使用WordPress程序的网站时,不论打开网站前台或是后台,速度都是非常慢.联想近期的GOOGLE断网事件,不难发现,原来是GOOGLE"故障"所致,以致WP内置的字体链接失效://fonts.googleapis.com/css?family=Open+Sans%3A300italic%2C400italic%2C600italic%2C300%2C400%2C600&subset=latin%2Clati

Eclipse 和 HSQLDB: 将关系数据库服务器嵌入到 Eclipse 中,第 2 部分

HSQLDB 开发者角色 对 HSQLDB 与 Eclipse 工作台的集成感兴趣的开发者可以很容易地被分为两类: 客户机开发者,他们只是用 HSQLDB 来存储数据. 引擎开发者,他们通过添加新的标量函数或者存储过程来扩展 HSQLDB 可以识别的 SQL 语言. 第一类开发者需要方便地访问 HSQLDB JDBC 驱动程序以提交 SQL 语句.不过,最好也可以方便地启动或停止不同的 HSQLDB 实例(比如,两个需要使用不同表的项目).更高级的开发者可能还喜欢生成 JavaBeans(TM)

Atom编辑器折腾记_(6)config.cson基础教程

号外 昨天,atom官方更新了atom的版本; 把之前内置到core的核心插件autocomplete替换成autocomplete plus,还做了许多修正,具体看这里 Notable Changes Atom now bundles Autocomplete Plus and the completion providers for HTML, CSS, Less, Sass, snippets, and the Atom API Opening editors is now signifi

wordpress后台打开慢/卡顿的解决方法

---------------------2014年12月29日更新--------------------- 我已经用下面提到的第三种方法禁用了谷歌字体了,最近wordpress后台还是莫名奇妙地非常慢,卡顿感让我十分不爽,本着处女座追求完美的毛病,继续寻找原因. 这回是浏览器左下角一直显示“正在等待0.gravatar.com”,看样子问题还是出在gravatar头像上了,貌似是gravatar的服务被可恶的GFW给墙了!可是在wordpress上似乎没有办法完全删除gravatar相关的代

优雅的处理Redis访问超时

很长一段时间以来,一直在项目中使用Redis作为辅助存储,确切来说是利用Redis的内存存储,而不是将其作为缓存.比如常见的利用Set集合来判断某个数值是否存在,或者将来自不同请求的数据放在Redis中进行拼接然后一起写入MySQL等数据库. 这种存储目的的使用要求对Redis的访问不能失败(如果作为缓存使用,是接受失败的),所以作为存储目的使用代码中要对请求Redis的代码进行异常处理以及重试等. 在最初的代码中采用了最常见的方法如try ... catch ...处理异常,递归进行重试,类似