使用Visual Studio Team Services持续集成(一)——构建ASP.NET Core

使用Visual Studio Team Services持续集成(一)——构建ASP.NET Core

概述

持续集成(CI)是将代码尽量频繁地集成到共享仓库中的过程。在代码集成期间,构建中断或测试失败能够及时地通知代码中的错误。html

当许多开发人员在复杂的软件项目上进行协做时,将代码的不一样部分集成在一块儿多是一个漫长而不可预测的过程。可是,若是持续地构建和部署项目,可使这个过程更加高效和可靠。git

Visual Studio Team Services简化了应用程序的持续集成过程,不管目标平台是什么,或者使用的是什么语言,VSTS Team Build容许:github

  • 在Linux,Mac和Windows上构建
  • 使用私有的或托管的(Azue)构建代理
  • 为Android、iOS、Java、.NET等应用使用多平台构建代理
  • 与工做、测试、编码、构建和发布的无缝集成
  • 经过实时构建状态跟踪构建

前置条件

要完成这个实验室须要:web

  • Visual Studio Team Services 帐户.若是没有,须要建立一个。
  • Visual Studio 2017 或更高版本
  • 可使用Visual Studio team Services Demo Data generator Visual Studio team Services账户提供预先定义的项目数据。在本动手实验请使用My Health Clinic模板。

若是没有使用VSTS Demo Data Generator,能够从GitHub仓库中复制代码。npm

练习1:构建ASP.NET Core

ASP.NET Core是一个用于构建web和云应用程序的精简和可组合框架。这里将展现如何自动构建HealthClinic ASP.NET Core应用程序。json

若是使用演示生成器提供的项目,那么构建定义应该自动建立。能够在不添加或修改任务的状况下了解在VSTS中构建管道是如何工做的。不然,能够按照如下步骤建立一个新的构建定义。gulp

任务1:建立新的构建定义

1.从VSTS账户概述页面,选择团队项目。

2.点击Build and Release选项卡并选择Builds

3.点击New建立构建定义

这里写图片描述

4.能够从选择一个模板开始,该模板将添加一组任务,为正在构建的应用程序应用典型的设置,或者从一个空白的过程开始,从头开始构建。有一个用于构建ASP.NET应用的模板。接下来将使用它。选择ASP.NET Core (PREVIEW)并单击apply应用构建定义的模板。

这里写图片描述

5.如您所见,该模板已经应用了一组典型的关注构建ASP.NET core应用程序的任务。在不少状况下,可能不须要作任何其余事情,仅仅是指向正确的repo和branch就能够了。在这种状况下,须要对构建进行一些定制。选择Get sources任务。能够从各类源(包括GitHub、SVN或任何其余Git仓库库)获取代码,可是因为在VSTS项目自己中有对应的代码,因此选择这个项目。若是没有指向正确的仓库和分支,请更改它

这里写图片描述

6.下一个任务Restore不须要更改

7.保存构建定义——将它命名为MHC.Web.CI

My Health Clinic web应用程序依赖于节点组件和其余的库。须要添加任务来下载和安装这些包,而后才能构建。在接下来的任务中,咱们将看到如何将任务添加到构建定义中。app

任务2:添加构建任务

从团队项目中删除未使用的repo,以组织项目的源代码。框架

1.选择Add Task以后选择Package查找与该类别相关的任务,选择npm并点击Add。将其放置到Build任务后

这里写图片描述

2.将工做文件夹更改成src/MyHealth.Web。该项目有一个json文件,npm安装命令经过他知道须要安装哪些包

这里写图片描述
接下来,您须要运行bower来安装web包。可使用Command Line/Shell Script工具运行Bower命令,可是更好的方法是使用Bower任务。这个任务不是现成的,须要从市场上安装。asp.net

从另外一个选项卡,导航到市场上的Bower extension page并安装它。当完成返回到正在编辑构建定义的选项卡时,关闭该选项卡。

1.保存构建定义并刷新页面。应该在Package选项卡下看到Bower任务。选择该任务并单击Add

这里写图片描述

2.选择Bower任务并更改Bower JSONPath指向MyHealth.Web 文件夹下的bower.json文件。

这里写图片描述

3.接下来须要gu重点内容lp任务。选择Add Task,并查找Gulp from the Build**部分,将其添加到构建定义中。
这里写图片描述

4.更改Gulp file path指向MyHealth.Web文件夹下的的gulp文件。

这里写图片描述

5.其他的任务不须要任何更改。已经准备好运行该构建。可使构建做为一个持续集成(Continuous Integration)构建运行,以便在分支上的每一个签入都会触发其运行。稍后咱们将在实验室中看到。如今,咱们将手动运行它。

6.选择Save & queue来保存构建定义并当即对构建进行排队。若是已经保存了构建定义,从菜单中选择Queue

这里写图片描述

7.须要选择要运行此构建的构建代理。能够选择在一个前提代理上运行构建,或者使用托管在Azure上的代理。咱们将使用Hosted VS2017代理,由于它拥有.NET core框架和构建应用程序所需的全部其余组件。

这里写图片描述

8.将看到构建等待寻找代理运行。它可能须要几分钟,而且一旦获得一个代理,构建就会开始执行。当构建运行时,能够实时看到输出日志。若是须要进行更深刻的分析,还能够后续下载日志。

这里写图片描述

9.完成全部步骤以后,能够在顶部选择构建编号(Build number)以得到运行的详细信息。Summary选项卡显示了运行的摘要,包括谁触发了它,在什么时间,获取了哪些代码和提交,相关的工做项,测试等等。

这里写图片描述

10.Timeline视图将帮助您找出运行的每一个任务的时间。若是构建定义包含发布任务,若是有任何文件被发布,能够从Artifacts选项卡中找到它。

这里写图片描述
咱们将了解构建中如何处理变量、设置不一样的触发器机制等等。

动手实验

类别 文章名称
概述 Visual Studio Team Services 动手实验
计划 使用Visual Studio Team Services敏捷规划和项目组合管理(一)使用团队、区域和迭代
使用Visual Studio Team Services敏捷规划和项目组合管理(二)VSTS中的工做项
使用Visual Studio Team Services敏捷规划和项目组合管理(三)使用Kanban板
使用Visual Studio Team Services敏捷规划和项目组合管理(四)冲刺计划和任务板
使用Visual Studio Team Services敏捷规划和项目组合管理(五)组合管理
使用Visual Studio Team Services敏捷规划和项目组合管理(六)——VSTS仪表盘的使用
使用Visual Studio Team Services敏捷规划和项目组合管理(七)——流程定制
Microsoft Teams 集成 (协做, 沟通 和 行为)
使用VSTS的Git进行版本控制(一)——复制现有仓库)
使用VSTS的Git进行版本控制(二)——提交保存工做)
使用VSTS的Git进行版本控制(三)——评审历史记录)
使用VSTS的Git进行版本控制(四)——在Visual Studio中管理分支)
使用VSTS的Git进行版本控制(五)——从Team Services Portal管理分支)
使用VSTS的Git进行版本控制(六)——拉取请求)
使用VSTS的Git进行版本控制(七)——管理仓库)
相关资料 Visual Studio Team Services Demo Generator简介
参考文章 Continuous Integration using Visual Studio Team Services
相关文章
相关标签/搜索