【问题标题】:Is there a way to create a VSTS (TFS) checkin policy to prevent a checkin that has no associated build definition?有没有办法创建 VSTS (TFS) 签入策略来防止没有关联构建定义的签入?
【发布时间】:2016-10-11 09:23:42
【问题描述】:

在微服务架构中使用 Visual Studio Team Services(以前是 Visual Studio Online),目前大约有 50 个 CI 构建定义。除非文件夹下的解决方案文件具有在同一文件夹路径上触发的关联构建定义,否则有没有办法阻止签入?

通过这种方式,我们可以确定所有服务都在第一次签入时构建了 CI,我们不必手动(或以其他方式)检查我们是否覆盖了它们。

即使是针对源路径解决方案文件查询构建定义触发路径的 API 也足以生成构建定义覆盖率报告以快速找到任何差距。

【问题讨论】:

    标签: tfs azure-devops


    【解决方案1】:

    您可以自定义签入策略来检查每个构建的触发路径。简单的步骤:

    1. 自定义签到策略,参考this文章(用VSTS申请VS2015,注册表路径不同,例如:对于64位HKEY_LOCAL_MACHINE/SOFTWARE/WOW6432Node/Microsoft/VisualStudio/14.0/TeamFoundation/SourceControl/入住政策)
    2. 在Evaluate方法中,获取pendingchanges路径,例如:string path= PendingCheckin.PendingChanges.CheckedPendingChanges.First().ServerItem;
    3. 通过REST API获取特定团队项目的构建定义并根据构建定义ID获取构建定义详细信息,并检查每个构建定义触发路径。

    【讨论】:

      猜你喜欢
      • 2017-01-08
      • 2021-01-30
      • 2015-04-22
      • 2020-06-09
      • 2018-06-05
      • 1970-01-01
      • 2020-01-20
      • 1970-01-01
      • 2011-09-02
      相关资源
      最近更新 更多