0x00

很早之前就想体验一把持续集成的快感,然后刚好手头上有个 asp.net core 的项目,就想来部署一下持续集成。一开始我是想用 Jenkins 的,弄了好半天,git 仓库没法同步下来,我就放弃了,然后发现 JetBrains 家的 TeamCity 官方出了一个 dotnet core plugin,简直不要太方便。果然,很快,我就实现了持续构建的功能,下面是操作方法。

0x01安装 TeamCity

先去 TeamCity 的官网下一个 Windows 的安装包,因为我用的是 windows server 2008。然后 ftp 上传到服务器,为啥不在服务器上面直接下载呢?因为服务器上享受不了睾贵的*雷会员加速,毕竟 TeamCity 是在国外的。然后很脑残的一路安装过去就好了,并没有很多要配置的地方,都是无脑下一步。
安装完毕后,会打开 TC 的 Web UI 窗口,在这里 TC 会让我们注册一个管理员帐号,并进行一些配置,完成之后,我们就可以从外部访问 TC Server了。

0x02启动、重启 TeamCity 服务

安装完成过后,TeamCity 会自动运行,但是后面的操作中会涉及到重启 TC 的操作,所以在这里先讲一下。
打开任务管理器,切换到服务选项卡,单击右下方的 服务... 。然后就进入了服务界面,在列表中找到 TeamCity 服务,然后右键单击,就可以随意启动、停止 TC 了。

0x03安装必要的 TC 插件

其实呢,第一个插件也可以用命令行代替的,毕竟 dotnet 的命令都很短。。。

然后我们就需要安装这些插件了,操作如下:

  1. 然后直接上传上面的压缩包就好了
  2. 上传完毕后,重启 TC 服务

0x04配置 TC 项目

这部分的东西稍微看下英文的提示都可以很容易的完成的,下面我就稍微解释一下 Build Configration 里面配置项的用途。

在这里我使用了5个构建步骤,分别是:

  1. restore -- 还原程序包
  2. build -- 构建
  3. publish-iis -- 使用 publish-iis 工具修改 web.config 文件中的占位符
  4. publish -- 发布 asp.net core 应用
  5. ftp upload -- 通过 ftp 上传到 iis 网站目录

下面的图中显示了具体的配置:

由于我当前的项目使用的是 Full Framework,所以我在 publish-iis 指定了 Framework 版本号 为 net452

至此,TC 持续集成就已经完成了一大部分了,当然了,还有自动测试的模块没有添加,不过现在这样子对我来说已经很足够了。

asp.net core 通过 TeamCity 实现持续集成笔记的更多相关文章

  1. ASP.NET Core + Docker +Jenkins 实现持续集成

    1.新建一个ASP.NET Core MVC应用程序: 2.将其上传到git: 3.建立Jenkins任务 (1)选择"新建任务",输入任务名称,选择"自由风格项目&qu ...

  2. 跨平台应用集成(在ASP.NET Core MVC 应用程序中集成 Microsoft Graph)

    作者:陈希章 发表于 2017年6月25日 谈一谈.NET 的跨平台 终于要写到这一篇了.跨平台的支持可以说是 Office 365 平台在设计伊始就考虑的目标.我在前面的文章已经提到过了,Micro ...

  3. Taurus.MVC 微服务框架 入门开发教程:项目集成:2、客户端:ASP.NET Core(C#)项目集成:应用中心。

    系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单 ...

  4. NET Core+win10+Jenkins+Github持续集成

    本篇和上一篇NET Core+win10+Jenkins+Gogs+open ssh持续集成没什么区别,只不过源码库换成github. 这里有两点不一样的是: 获取的代码的凭证不用用户名和密码用sec ...

  5. Asp.Net Core 进阶(二) —— 集成Log4net

    Asp.Net Core 支持适用于各种内置日志记录API,同时也支持其他第三方日志记录.在我们新建项目后,在Program 文件入口调用了CreateDefaultBuilder,该操作默认将添加以 ...

  6. ASP.NET Core框架揭秘(持续更新中…)

    之前写了一系列关于.NET Core/ASP.NET Core的文章,但是大都是针对RC版本.到了正式的RTM,很多地方都发生了改变,所以我会将之前发布的文章针对正式版本的.NET Core 1.0进 ...

  7. ASP.NET Core 项目实战(持续更新~~~)

    一.前言 准备写这个系列文章的设想开始于今年9月,毫无意外,期间又又又又拖了很长时间,文章主要是为了记录自己学习使用 ASP.NET Core Web API 与 Vue 创建一个前后端分离的项目的整 ...

  8. ASP.NET Core框架揭秘(持续更新中…)

    之前写了一系列关于.NET Core/ASP.NET Core的文章,但是大都是针对RC版本.到了正式的RTM,很多地方都发生了改变,所以我会将之前发布的文章针对正式版本的.NET Core 1.0进 ...

  9. Asp.net core Identity + identity server + angular 学习笔记 (第三篇)

    register -> login 讲了 我们来讲讲 forgot password -> reset password  和 change password 吧 先来 forgot pa ...

随机推荐

  1. HTTP协议 (六) 状态码详解

    HTTP协议 (六) 状态码详解 HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果 ...

  2. Greenplum 集群部署

    最近开始接触Greenplum,线上也在使用了,感觉还不错,本次介绍一下集群的部署方法.那么Greenplum的架构如下: (架构图来源网络) 简单来说GPDB是一个分布式数据库软件,其可以管理和处理 ...

  3. 数的长度---nyoj69

    超时 #include <stdio.h>#include <string.h>#define M 1000001int shu[M]; int main(){ int n, ...

  4. 杭电ACM 1196

    #include<stdio.h>int main(){ int num,j,k,s,f; int a[7]={0,0,0,0,0,0,0}; while(scanf("%d&q ...

  5. pod 新格式

    执行 $pod install 的时候,报一下错误: Analyzing dependencies [!] The dependency `MJExtension` is not used in an ...

  6. Splay树-Codevs 1296 营业额统计

    Codevs 1296 营业额统计 题目描述 Description Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况. Tiger拿出了公司 ...

  7. java 中设置session失效时间

    程序中session都有一个默认的过期时间,其中tomcat中的默认时间为30分钟,根据需要我们可以去手动设置session的过期时间,以下是设置session的过期时间的三个方法:1.在tomcat ...

  8. Spark中容易遇到的问题

    1. 序列化错误 所有需要传给RDD的变量都要实现java.io.Serializable接口.

  9. 【Android测试】【第十八节】Espresso——环境搭建

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5604642.html 前言 首先还是老规矩,看看官方文档吧 ...

  10. nsurl 测试ATS

    LIPEIdeMacBook-Air:~ lipei$ nscurl --ats-diagnostics https://xxxxx.com/ Starting ATS Diagnostics Con ...