Azure Devops中的variable group建议或者只能(?)添加string类型的value.基于此我们想在variable group实现array或者hashtable的传递的核心思路就是先定义出合适易转换的字符串, 然后将字符串转为我们想要的array和hashtable.为了测试,我在的variable group中预先添加了arraystring 和 hashstring,一定要注意我设置的方法,value值格式会影响整个过程. 利用rest api 去get一下值,我们…
我们在Azure DevOps中设置参数的时候,可以使用build,release各自的variables,但是各自的变量不能共用.此时我们需要使用variable group,它允许跨Build和Release来共享公共变量. 我们常规是做法是手动创建一个variable group,然后手动添加name和value.如果变量很多的时候,这种手动操作繁琐并且有一定的风险.下面我会演示三个过程: 我的主要参考: https://www.danielstocker.net/updating-a-v…
一,引言 之前一篇文章有讲解到利用 利用Azure DevOps 实现自动化部署基础资源,当时 TF 代码没有针对 Azure 各个资源的封装,所有的资源代码全部写在一个 main.tf 文件中.然后还有讲到 Azure Resource Common Module 的 TF 代码的封装.之前还在Azure Terraform 第四节讲到利用 Azure Storage 远程状态文件存储.那么今天我们尝试将封装过 Common Module 的 TF 代码,结合 TF 状态文件远端存储,实现自动…
一,引言 上一篇文章记录了利用 Azure DevOps 跨云进行构建 Docker images,并且将构建好的 Docker Images 推送到 AWS 的 ECR 中.今天我们继续讲解 Azure DevOps 的 Pipeline,利用 Release Pipeline 实现 Terraform for AWS Infrastructure Resources 自动部署,我们的目标是将 images 部署到 AWS ECS 上. -------------------- 我是分割线 -…
1. 需求 在使用 Pipeline 自动化 CI/CD 流程的过程中,我还还需要自动修改程序集的版本号.这个功能 EdiWang 和LeoLaw 都写文章讲解过做法.不过我的项目基本都是 .Net Framework 项目,而且我的版本号规则也不一样,所以这里分享一下我的做法. 我用的规则版本号规则是 [Major].[Minor].[BuildId].0,其中: 进行不兼容的 API 更改时,Major 将会增加 以后向兼容方式添加功能时,Minor 将会增加 Buildid 是一个也称为运…
一,引言 Azure Pipeline 管道是一个自动化过程:但是往往我们由于某种原因,需要在多个阶段之前获得批准之后再继续下一步流程,所以我们可以向Azure Pipeline 管道添加审批!批准流程可帮助我们进一步控制自己的管道:我们可以控制管道内特定阶段的 Step 开始,通过审批,并决定 Azure Pipeline 管道何时完成. 而至于为什么要添加审批流程,是因为基础设施资源的部署是需要进行评估,慎重操作.有了审批,可以查看前一阶段以确认配置代码是否正确. -------------…
一,引言 之前我讲过的所有的案例中,都是将整个Azure Resource 部署到同一个订阅下,没有做到灵活的在 Azure Pipeline 在运行前选择需要部署的环境.在实际的项目开发中,我们也会遇到将这些基础设施资源验证完成后,分别部署到 DEV,UAT,PRD 等多个环境 .那么我们就带着个整个问题开始今天的分析. --------------------Azure Terraform 系列-------------------- 1,Azure Terraform(一)入门简介 2,A…
思路浅析 在我们分析的 Azure Terraform 系列文中有介绍到关于 Terraform 的状态文件远程存储的问题,我们在  Azure DevOps Pipeline 的 Task Job 加 azure_cli_script 执行内联脚本(该脚本帮我们创建好 Terraform 状态文件存储所在的 Azure Resource Group. Azure Storage Account.Azure KeyVault 等资源),需要注意的是,内联脚本中有使用动态变量,该变量临时存储 Az…
看到阿迪王那边出品了一个基于Azure Devops自增版本号  链接 http://edi.wang/post/2019/3/1/incremental-build-number-for-net-core-via-azure-devops 恰巧我自己也有一个版本(虽然核心原理是差不多的)也分享下 (以下均基于Tfs 2018的截图,Azure Devops Server暂时还没发布,只能Tfs将就着了,虽然Azure Devops跟当前的Tfs 2018已经界面有"一些"改动不过流程…
介绍 Azure DevOps,以前称为Visual Studio Team Services(VSTS),可帮助个人和组织更快地规划,协作和发布产品.其中一项值得注意的服务是Azure Pipelines,它可以帮助开发人员构建持续集成(CI)和持续交付(CD)管道,从而自动化和标准化软件开发过程的构建,测试和部署阶段.此外,Azure Pipelines还提供本机容器支持,可与任何语言,平台和云配合使用.像软件开发这样的机器学习也是一个包括构建,测试和部署阶段的过程,这使其成为自动化和标准化…