【TFS 2017 CI/CD系列 - 02】-- Build篇
、创建Build
登录TFS,在现有的【Projects】中选择一个需要要创建Build的Project,点击【Build & Release】跳转页面

在新页面中选择【Builds】选项卡,然后点击【New】按钮

选择一个Build模板

下一步,简单配置Build definition(Repository、Agent Queue),然后确认完成。

成功创建了一个包含默认Step的Build,可以根据项目实际需要配置Build Step
二、配置Build
根据模板创建完Build Step后,我们需要配置Build Step,首先:获取源代码需要配置Repository。
注意:这里的Mappings和TFS项目的结构必须一致,有外部项目引用的也必须保持层级一致!

项目Build时需要根据不同的项目类型,用不同的Step实现,如:常用的编译整个Web Application项目只需指定solution为项目的sln文件,并设置编译参数,平台,配置和VS版本就可以了:
不管是用Publish还是OutDir的方式最终编译出来的文件都要放到$(build.artifactstagingdirectory)目录下,才能最终Publis出去然后被release使用:
可以在Triggers中配置Build的执行方式:每次提交代码执行Build或定时执行Build
三、执行Build
执行Build需要点击【Queue new build...】按钮,或设置的触发器被触发才会执行:
如果Publish成功,则可以点击Build版本号查看发布后的内容:
【TFS 2017 CI/CD系列 - 02】-- Build篇的更多相关文章
- 【TFS 2017 CI/CD系列 - 03】-- Release篇
为Project创建Release必须要先创建Build,若还没有Build definition请看上一篇文章:[TFS 2017 CI/CD系列 - 02]-- Build篇 一.创建Releas ...
- 【TFS 2017 CI/CD系列 - 01】-- Agent篇
一.环境要求: PowerShell 3.0 或者更高版本 VS2015或者更高版本 二.下载Agent: 用浏览器打开TFS,[Settings]--> [Agent Pools]--> ...
- CI/CD系列
一.CI/CD系列 什么是CI/CD(译) Docker与CI/CD(转) Docker和CI/CD实战 二.Git 三.GitLab
- CI/CD系列之阿里云云效2020应用篇
目录 前言 实战 制品仓库 maven配置 项目pom配置 代码管理 流水线 参考资料 前言 前不久登录阿里云后台,看到云效的介绍,出于好奇便点进去看了看,刚开始以为云效是类似Jenkins的一套自动 ...
- ASP.Net Core2.1 秒杀项目一步一步实现CI/CD系列一
前言:有一段时间没写博客了,那是因为博主菜,需要学习和准备,这不带来了本系列的文章.在这里我把学习的心得分享出来,有些点理解的也不是太到位,希望大佬们能多多给点建议和指导.下半年就把这个系列的文章写完 ...
- [转]GitLab Continuous Integration (GitLab CI/CD)
本文转自:https://docs.gitlab.com/ee/ci/README.html GitLab Continuous Integration (GitLab CI/CD) The bene ...
- Java学习笔记之MyEclipse 2017 CI 7、CI 8、CI 9和CI 10的安装与激活
0x00 前言 本文介绍MyEclipse 2017 CI 7.CI 8.CI 9和CI 10的安装与激活. 重要提示:此方法理论上应该能激活MyEclipse 2017 CI所有系列,即激活方法是通 ...
- 技术番外篇丨Github Action CI/CD
起源 看到.Net群里再聊CI/CD,我就这里分享一下我目前自己一些小东西的做法,我目前在Github有一个自己私有的组织,里面存放了我的部分商业化项目,早期我采用Jenkins用Webhooks进行 ...
- [eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置
[eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置 https://github.com/dotnet-architecture/eShopOnContain ...
随机推荐
- IOS OS X 中集中消息的传递机制
1 KVO (key-value Observing) 是提供对象属性被改变是的通知机制.KVO的实现实在Foundation中,很多基于 Foundation 的框架都依赖与它.如果只对某一个对象的 ...
- 位(bit)、字节(byte)、字
1.位(bit)来自英文bit,音译为“比特”,表示二进制位.位是计算机内部数据储存的最小单位,11010100是一个8位二进制数.一个二进制位只可以表示0和1两种状态(21):两个二进制位可以表示0 ...
- python基础一 day2 字符串操作
s.capitalize() s.upper() s.lower() s.swapcase() s.title() s.center(20,"#") s.expand ...
- 字符串 || CodeForces 591B Rebranding
给一字符串,每次操作把字符串中的两种字母交换,问最后交换完的字符串是多少 arr数组记录每个字母最后被替换成了哪个字母 读入字符前面加一空格 scanf(" %c %c", &am ...
- java登录拦截Filter
此例子为一个简单的登录拦截. 首先在web.xml中配置拦截类. <filter-mapping> <filter-name>SessionFilter</filter- ...
- select onchange事件的使用
<select name="expireDay" id="expireDay" class="form-control" onchan ...
- C++之类成员的访问权限详解(一)
概念解析 众所周知,面向对象编程语言的特征之一就是封装,不同编程语言对于封装提供的实现有所不同,但原理大体上是相同的.C++提供了三种不同程度的访问权限来实现,主要是通过public.private. ...
- Linux制作本地yum
首先在vm上安装centos 1.首先查看挂载光盘的位置:#df -h [root@lang ~]# df -hFilesystem Size Used Avai ...
- Installing MySQL 5.7.23 on CentOS 7
Installing MySQL 5.7.23 on CentOS 7 1. 安装前检查 1.1 检查NUMA是否开启 NUMA为什么要咋MySQL中禁用? MySQL是单进程多线程架构数据库,当nu ...
- vue App.vue router 过渡效果, keep-alive 结合使用示例
1, router.js配置 每个路由的index值 2, router.js配置 每个路由的keepAlive值 app.vue 代码 <template> <div id=&qu ...