代码托管

image.png
将代码推送到指定的Repos即可,没什么难度不详述,熟悉基础的Git操作即可

分支策略

默认是可以往 master 分支上直接推送代码的,但真实项目中可能大家都是基于 dev 分支来开发,发布前才会将 dev 合并到 master 分支;这就需要将 master 分支设置为不能允许任何人都可以直接推送代码到该分支

新建 dev 开发分支
image.png

master 分支设置分支策略 (比如:最少审阅者、必须关联工作项等);具体分支策略可根据实际项目情况设置

image.png

  1. 发布到远程存储库时遇到错误: rejected master -> master (TF402455: 不允许推送到此分支;必须使用拉取请求来更新此分支。)

至此 master分支不再支持直接push代码,必须要通过 pull-request方式进行代码合并,code review可以在这个时候来做,保证代码质量

持续集成(CI)

持续集成(CI)是构建软件并完成初始测试的过程,由一系列 Task 组成的 Pipelines

image.png

image.png

image.png
分支有代码更改时自动触发CI系统会自动构建并运行不同级别的自动化测试(如果写了测试的话)来验证更改
image.png

变量

  • 可以使用变量来表示Web部署的连接字符串,并且可以将该变量的值从一个阶段更改为另一个阶段。这些是自定义变量
  • 使用有关在其中运行部署管道的特定发行版,stage工件代理 的上下文的信息 。例如,脚本可能需要访问该构建的位置以进行下载,或者需要访问该代理上的工作目录以创建临时文件。这些是默认变量

**

image.png
image.png

变量组

使用变量组来存储要控制的值,并使其在多个管道中可用

Use a variable group to store values that you want to control and make available across multiple pipelines. You can also use variable groups to store secrets and other values that might need to be passed into a YAML pipeline. Variable groups are defined and managed in the Library page under Pipelines.

image.png

任务组

将之前的API-CI封装成一个任务组,之后所有 Web API 类型项目都可以使用这个任务组

image.png

image.png

将可变参数使用$()方式作为变量暴露出去,使用该任务组时只需提供对应实际参数即可

持续部署(CD)

设置部署对应信息,选择对应的CI
image.png
设置部署组(这将决定应用将会部署到哪个部署组下)
image.png
设置标记(这将决定应用将会部署部署组下哪台服务器)
image.png
设计部署管道
image.png
运行部署管道image.png查看 IIS
image.png
访问站点测试image.png启用持续部署,每当有生成新的CI时都会触发自动部署
image.png

这里只是简单示例,实际落地可能还会遇到很多问题,多看MSDN能解决99%的问题

多环境部署

可以在部署管道设计中使用替换环境变量的方式实现多环境发布

变量替换

此功能可以替换JSON配置文件中的值。指定JSON配置文件中与管道和阶段变量的名称匹配的值将被覆盖(如appsetting.json

定时计划

image.png

这没什么好说的,配置之后就会定时执行,可以借助这一特性做一些操作。比如:定时执行一些自动化测试