如果我没记错的话,Azure Devops设置为添加一项功能,以允许将发布管道放入yaml中,类似于构建管道。该功能可用吗?
我是否希望获得有关将旧版经典发行渠道迁移到新格式的指导?
更新:看来我只差4个月了。发表于2019年5月6日
有了我们的新更新,开发团队现在可以利用相同的YAML文档以代码形式构建多阶段管道,以实现持续集成和持续交付。这是我们客户最大的要求之一
对于像我这样的人,这里有一些有用的链接:手动创建了许多对新格式感兴趣的经典发行管道。
https://azure.microsoft.com/en-us/updates/unified-pipelines/
https://azure.microsoft.com/en-us/blog/accelerating-devops-with-github-and-azure/
答案 0 :(得分:1)
我发现Microsoft提供了一些内置帮助,可以将发布管道从经典的基于GUI的发布管道迁移到基于YAML的管道。
如果您编辑经典的基于GUI的Release管道并向下钻取任务,则右上角有一个链接,该链接显示查看YAML :
单击链接将生成与任务关联的YAML。不幸的是,它不包含字段值。而是使用变量,而不指定这些变量的值:
steps:
- task: IISWebAppManagementOnMachineGroup@0
displayName: 'IIS Web App Manage'
inputs:
IISDeploymentType: '$(Parameters.IISDeploymentType)'
ActionIISWebsite: '$(Parameters.ActionIISWebsite)'
WebsiteName: '$(Parameters.WebsiteName)'
WebsitePhysicalPath: '%SystemDrive%\inetpub\wwwroot\AspNetDemo'
AddBinding: '$(Parameters.AddBinding)'
Bindings: '$(Parameters.Bindings)'
ParentWebsiteNameForVD: '$(Parameters.WebsiteName)'
VirtualPathForVD: '$(Parameters.VirtualPathForApplication)'
ParentWebsiteNameForApplication: '$(Parameters.WebsiteName)'
VirtualPathForApplication: '$(Parameters.VirtualPathForApplication)'
AppPoolName: '$(Parameters.AppPoolName)'
幸运的是,GUI中的任务具有针对大多数字段的链接,并具有特定于字段的帮助。该帮助提到了哪个变量映射到字段值:
因此,您可以遍历任务中的每个字段,确定哪个变量对应于每个字段,以算出要添加到YAML代码段中的值。
这有点费力,但是比尝试从头开始解决所有问题要快。
不幸的是,似乎没有任何方法可以在工作或阶段级别上查看YAML,而只能在任务级别上查看。因此,您必须为每个任务重复该过程。您还必须制定自己定义阶段和工作的YAML。
答案 1 :(得分:0)