使用Azure DevOps持续集成GitHub项目

点击蓝字

关注我

微软的Azure DevOps是一款软件开发管理工具,整合了需求、代码、编译、测试、发布等所有功能于一身。今天我们就来看看如何用Azure DevOps对自己GitHub上的项目做持续集成,并能在GitHub显示最新编译状态。

其实在不久之前,Azure DevOps 曾经叫做Visual Studio Team Service,本地版叫做 Team Foundation Server (TFS),为了体现拥抱开源,包容一切的全新微软形象,改名部有一次立功了,去掉了容易让人误解为微软Only的 "Visual Studio" Brand,并且更加侧重于云端。

使用Azure DevOps持续集成GitHub项目_第1张图片

新建Azure DevOps项目

让我们进入正题,首先,你需要在Azure DevOps上新建一个Project,这个Project仅仅用于编译代码,你可以完全无视代码托管、测试、发布等其他功能。建立完成之后,点这个蓝色的小火箭,旧可以经入Pipeline功能。

使用Azure DevOps持续集成GitHub项目_第2张图片

新建编译管线

Pipeline里选择Build,然后在New菜单里选择New build pipeline

使用Azure DevOps持续集成GitHub项目_第3张图片

连接GitHub项目

然后选择GitHub。注意:如果你之前没有在Azure DevOps里连接过GitHub,那么这一步里你需要进行授权认证,允许Azure DevOps访问你的GitHub资源。

使用Azure DevOps持续集成GitHub项目_第4张图片

连接完成后,选择你的Repository以及branch

使用Azure DevOps持续集成GitHub项目_第5张图片

比如我需要编译 Edi.ImageWatermark 这个项目

使用Azure DevOps持续集成GitHub项目_第6张图片

然后点击"Continue",进入编译配置页面

使用Azure DevOps持续集成GitHub项目_第7张图片

配置编译步骤

我的这个工程是一个.NET Standard 2.0的类库,因此我选择.NET Desktop模板。这里可以根据你的项目类型,选择预定义的模板,比如安卓、iOS、各种语言的网站项目等等。实在没有的话,也可以新建空模板自己配置每一个步骤。

使用Azure DevOps持续集成GitHub项目_第8张图片

然后记得改编译管线的标题,让自己易于记住和管理

使用Azure DevOps持续集成GitHub项目_第9张图片

根据自己的需要,修改每一个编译步骤,比如我喜欢用最新版的NuGet,我旧可以把版本号改成4.9.2

使用Azure DevOps持续集成GitHub项目_第10张图片

并且我不需要测试,因为我的工程里并没有单元测试项目,因此我可以删除Test的步骤。

使用Azure DevOps持续集成GitHub项目_第11张图片

启用持续集成

想要每一次GitHub收到commit都进行编译的话,在Trigger里选择Enable continuous integration

使用Azure DevOps持续集成GitHub项目_第12张图片

类似的,如果当有人给你提PR的时候想要进行编译,也可以勾选 Enable pull request validation

使用Azure DevOps持续集成GitHub项目_第13张图片

使用编译状态图标

Options选项卡里复制Markdown link

使用Azure DevOps持续集成GitHub项目_第14张图片

然后粘贴到你GitHub工程的Readme.md里去,并且提交commit

使用Azure DevOps持续集成GitHub项目_第15张图片

这样你就得到了一个最新编译状态的图标

使用Azure DevOps持续集成GitHub项目_第16张图片

保存并测试编译管线

回到Azure DevOps,点击"Save & queue"

使用Azure DevOps持续集成GitHub项目_第17张图片

可以看到一个Build已经启动了

使用Azure DevOps持续集成GitHub项目_第18张图片

点进去还可以看到详细的编译过程

使用Azure DevOps持续集成GitHub项目_第19张图片

如果一切顺利,编译成功后,你的GitHub项目主页就会出现绿色succeeded的字样。并且以后一旦这个工程有新的commit提交到GitHub,都会触发持续集成的编译,并更新这个状态图标。

使用Azure DevOps持续集成GitHub项目_第20张图片

你可能感兴趣的:(使用Azure DevOps持续集成GitHub项目)