如何在Azure DevOps Service(VSTS online)中定制工作流程?

4
我已经阅读了所有的MSDN文档,但是无法找到在Azure DevOps Service(VSTS在线版)中编辑工作项转换的方法。
我的目标是:
  1. 添加自定义原因到工作项状态中。(例如:“已解决”,“不会修复”)
  2. 查看/编辑有关状态转换规则的所有现有规则。
6个回答

3
如果您使用VSTS中的托管XML过程模型,则可以实现此目标。 托管XML过程模型概念-VSTS 那么,您何时使用托管XML过程模型呢?在阅读了大量内容后,我在解释托管XML自定义的页面上找到了以下说明:
功能可用性:导入过程支持托管XML过程模型,该模型允许您通过更新选择的进程模板的XML定义文件来管理自定义。此功能仅适用于使用TFS数据库导入服务迁移到VSTS的帐户。”

但是由于我没有导入我的VSTS,所以我使用的是继承过程模型。目前该模型不支持此功能,这在评论中已确认

@RohanDaniel @ehofman@MSFT @DevMarTechOps 您是正确的。高级工作流管理,包括限制转换和自定义转换原因,目前在继承模型中还不可行。我们计划添加此功能。

此外,如果您确实使用了高保真迁移工具并且使用托管的XML过程模型,则无法切换到继承模型,如此链接所示。

总之,关于VSTS中的继承流程模型,目前不支持此功能,但微软已确认该功能在待办事项列表中。然而,计划在未来几个月内交付该功能的可能性不大,一年或更长时间后才会有可能实现。
在我的情况下,我还必须在BUG WIT(工作项类型)上添加附加字段和新状态。这是通过在VSTS上进行流程自定义来完成的,其中需要从标准流程(敏捷、CMMI、Scrum)中继承,然后进行自定义。
您可以添加自定义规则到WIT,并且可以基于状态更改制定规则...但是规则似乎太过受限,无法限制转换,并且设置字段的选项中没有“原因”字段。

2
实际上,我想出了一个解决方案!我承认它不够完美,但它能用。我创建了三个新字段:“规则错误”(文本单行),“违反规则”(文本单行)和“激活规则”(布尔值)。我把“规则错误”放在主选项卡上,这样我就可以看到错误信息,而另外两个字段我创建了一个名为“无用”的选项卡并把它们放在里面。现在,添加一个重置规则的规则:
名称:重置规则
条件:等于 ==> "激活规则" ==> true 的值
操作:清除值 ==> "规则错误"
然后,每个不需要的状态转换都需要一个规则:
名称:状态更改-批准到部署QA
条件:工作项状态从 ==> 批准 ==> 部署QA 更改
操作:设置必需 ==> "违反规则"
操作:设置值 ==> "激活规则" ==> true 操作:设置值 ==> "规则错误" ==> "无法从批准更改为部署QA"
我知道,在字段“违反规则”中输入内容会破坏此执行,但由于此功能不存在,这是我没有访问托管XML时想到的唯一方法。

1

1
目前似乎都不可能实现。VSTS的过程定制与TFS非常不同,而且还在不断发展中。#1似乎是未来更新中可能添加的内容。但是#2似乎不会出现,因为微软已经默认放宽了VSTS上所有模板的转换规则。

0

通过创建自己的自定义扩展和创建一些规则,禁用从一个状态到另一个状态的状态更改是可能的

我已经为我的组织实施了这个功能,但还没有在网上发布... 很快就会做


1
#Shan,你有没有发布你的扩展程序?我们需要类似的功能。 - sanjeev

0
以下是一个解决方案,阻止任何非“高级管理”组成员更改PBI状态从Approved到Committed:
  1. 创建一个名为“Unlocked”的新字段。
  2. 创建一个新规则,在用户不属于“HighLevelManagement”时隐藏该字段,如下所示

enter image description here

  1. 创建一个新规则,当Unlocked为False且工作项从Approved变为Commited时,将动作设置为“只读”状态,如下所示:

enter image description here

现在,每当一个来自高级管理层的用户想要将状态从已批准更改为已提交时,他只需勾选“解锁状态变更”,然后再次勾选“解锁状态变更”,这样,任何来自高级管理层之外的人都将被限制在将状态从已批准更改为已提交。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接