visual-studio - 当从 TFS 2017 中的主代码而不是搁置代码生成工件时,如何触发发布管道?
问题描述
我正在开发 TFS 2017 并使用发布管道功能。
我已启用“持续部署”,一旦有新的工件版本可用,它就会触发发布管道,无论它是由搁置集还是由主代码生成,但我只需要在工件由主代码生成时触发,而不是由搁置。
请注意 - 我不能在 Build 定义的发布任务中编写 ne(variables['Build.Reason'],'Shelveset') ,因为手动测试人员需要工件。
任何帮助表示赞赏
谢谢
解决方案
以下是采用工作流和基于任务的方法的 TFS 的好方法。基本上,您正在定义一个标签,当构建根据某些条件成功完成时自动分配给构建时,在下面的示例中,仅当构建被安排时,但您可以自定义条件以在除搁置集之外的所有构建原因上运行如果您愿意,也可以构建。
在构建定义结束时,为“PowerShell 脚本”创建一个新任务,并在内联脚本中输入以下内容:
写主机“##vso[build.addbuildtag]TriggerRelease”
进一步向下转到控制选项并将“运行此任务”更改为自定义任务并输入以下内容:更多变量可以在这里找到,这是详细说明可访问的不同 build.reason 变量的页面。条件和使用方法可以在这里找到
and(succeeded(), in(variables['Build.Reason'], 'Schedule'))
推荐阅读
- hibernate - 仅继承子 MappedSuperclass 但不继承父 MappedSuperclass 类
- javascript - 启动不和谐机器人时遇到问题,SyntaxError: Unexpected token
- c++ - 如何收集满足特定概念的对象
- c++ - 如何提高 OpenCV 中estimateAffine2D(或estimageRigidTransform)的准确性?
- angular - 选择 id=selectedId 的元素
- python - 在python中获取print的输出(不带回车)
- reactjs - 如何创建转发依赖项的 React 钩子
- javascript - 如何从 Spotify API 获取信息以及如何将响应转换为 JSON?
- c - 如何在 Windows 中为 CMAKE 构建指定特定的编译器
- python-3.x - Panda 是否支持同一固定长度文件中的不同列规格?