如何在Azure DevOps(VSTS在线)中自定义工作流程?

时间:2017-04-14 10:47:30

标签: azure-devops

我已阅读所有MSDN文档,但找不到在Azure DevOps(VSTS online)中编辑工作项转换的方法。

我试图:

  1. 将自定义原因添加到工作项的状态。 (例如"已解决","无法解决")
  2. 查看/编辑有关状态转换的所有现有规则。

6 个答案:

答案 0 :(得分:2)

如果您使用的是VSTS中的Hosted XML Process模型,则可以使用此功能。 Hosted XML process model concept - VSTS

你什么时候进入Hosted XML Process模型? 经过大量阅读后,我在page explaining Hosted XML customization上找到了以下注释

  

功能可用性:导入过程支持Hosted XML流程模型,该模型允许您通过更新流程模板的选定XML定义文件来管理自定义。此功能仅适用于使用TFS数据库导入服务迁移到VSTS的帐户。

但是因为我没有导入我的VSTS,所以我在继承过程模型上。 目前不支持此功能,因为已确认here in comments

  

@RohanDaniel @ ehofman @ MSFT @DevMarTechOps你是对的。在继承模型中,尚无法实现高级工作流管理,包括限制转换和自定义转换原因。我们在积压的日子里添加了。

此外,如果您确实使用了高保真迁移工具并且拥有托管XML流程模型,那么您就会陷入困境。您无法移至继承模型as seen in this link.

总结然后。 在VSTS中的继承流程模型中,这不是当前可用的功能,而是在MS确认的待办事项上。但是,未计划在未来几个月和一年或更长时间内交付从现在起更有可能。

在我的情况下,我还必须在BUG WIT(工作项类型)上添加添加字段和新状态。这是通过customizing a process在VSTS上完成的,这是通过继承一个标准流程(Agile,CMMI,Scrum)完成的,然后您可以自定义。

你可以add customized rules到WIT,你可以根据状态的变化来制定规则....但是规则似乎太有限了,不能限制转换,设置字段的选项没有“原因” “现场可用。

答案 1 :(得分:1)

目前看来这些事情都不可能。

VSTS流程定制与TFS非常不同,并且仍在不断发展。 #1似乎可能会在未来的更新中添加。但#2似乎不会出现,因为默认情况下,微软放宽了VSTS上所有模板的大部分转换规则。

答案 2 :(得分:0)

在使用继承过程时当前无法实现。

您可以在社区中为此功能投票:Allow specifying state transitions when using inheritance process

答案 3 :(得分:0)

事实上,我想出了一个解决方案!我承认这不是我想要的干净的方法,但是可以。

我创建了三个新字段:“规则错误”(文本单行),“规则破坏”(文本单行)和“规则已激活”(布尔值)。

“规则错误”我将其放在主选项卡上,以便可以看到该错误,另外两个我创建了一个名为“无用”的选项卡,并将其放置在其中。

现在,添加一个进行重置的规则:

  • 名称:重置规则
  • 条件:等于==>“已激活规则” ==> true
  • 操作:清除值==>“规则错误”

然后,每个不希望的状态转换都遵循一个规则:

  • 名称:状态更改-已批准进行已部署的质量检查
  • 条件:工作项目的状态从==>已批准==>已部署质量检查变为
  • 操作:设为必填==>“规则已损坏”
  • 操作:设置==>“已激活规则”的值==> true
  • 操作:设置==>“规则错误” ==>“无法从已批准的质量检查更改为已部署的质量检查”的值

我知道,在“规则已损坏”字段中输入内容会破坏此强制执行,但是由于此功能不存在,这是我无法访问托管XML时想到的唯一方法

答案 4 :(得分:0)

可以通过创建我们自己的自定义扩展并创建一些规则来禁用从一个状态到另一种状态的更改

我已经为我的组织机构实现了此功能,但尚未在线发布。将很快完成

答案 5 :(得分:0)

这里是一种变通方法,用于拒绝所有不是“ HighLevelManagement”组成员的用户将状态从“已批准”更改为“已为PBI提交”:

  1. 创建一个名为“未锁定”的新字段。
  2. 当用户不属于“ HighLevelManagement”的一部分时,创建一个新规则以“隐藏字段”

enter image description here

  1. 创建一个新规则,将“将只读”操作设置为“状态”时 Unlocked为False,工作项目从批准更改为提交为 下方:

enter image description here

现在,每当来自HighLevelManagement的用户要将状态从“已批准”更改为“已提交”时,他只需勾选“未锁定”更改状态,然后再勾选“未锁定”,这样,来自HighLevelManagement外部的任何人都将被限制从已批准状态更改状态致力于。