在外掛程式檔案中定義工作群組和工作的相依性
當您將工作群組或工作新增至外掛程式檔案時,必須以正確的順序新增,並宣告群組或工作對於成功完成其他工作群組或工作所擁有的任何相依性。 某一項工作可能會相依於其他工作,此時其他工作必須先完成,主要工作才能執行。 例如,在用來建立工作項目類型的所有工作都成功完成之前,用來建立工作項目查詢的工作無法執行。 因此,上傳工作項目查詢的工作相依於上傳工作項目類型的工作。
所需的外掛程式和外掛程式相依性
下圖顯示為 Team Foundation Server (TFS) 流程範本定義的相依關係。 如圖所示,WorkItemTracking 外掛程式相依於是否成功完成 Groups and Permissions 外掛程式,而 Groups and Permissions 外掛程式則相依於是否成功完成 Classifications 外掛程式。 TestManagement 與 VersionControl 的外掛程式相依於是否完成前三個外掛程式。 Build、Lab、Reports 以及 Portal 的外掛程式均相依於是否完成版本控制的外掛程式。
提示
如果您依照每個外掛程式檔案中各項工作群組與工作的相依性順序定義這些工作群組與工作,就會使讀取檔案和排除相依性問題更為容易。
相依性可以用來表示 [新增 Team 專案精靈] 中外掛程式執行的順序。 有些外掛程式一律會相依於其他外掛程式, 此外,流程範本並不需要使用所有外掛程式。
下表會識別哪些外掛程式相依於其他外掛程式。 只需要 Classifications 外掛程式。 其他所有外掛程式都是選擇性的。 如需每個外掛程式的詳細資訊,請參閱流程範本檔概觀。
外掛程式 |
相依的外掛程式 |
---|---|
Build |
Groups、VersionControl |
Classifications |
無 |
Group |
Classifications |
Lab |
Build、Classifications、Groups、WorkItemTracking |
Portal |
Classifications、Reporting、VersionControl 和 WorkItemTracking |
Reporting |
Classifications、VersionControl 和 WorkItemTracking |
TestManagement |
Classifications、Groups 和 WorkItemTracking |
VersionControl |
Classifications、Groups 和 WorkItemTracking |
WorkItemTracking |
Classifications 和 Groups |
定義工作群組相依性
存在相依性時,請在工作和群組中使用相依性項目加以表示。 下面範例將示範如何使用相依性項目來指定 WorkItemTracking 工作群組相依於 Classification 與 Groups 工作群組。
<group id="WorkItemTracking"
description="Workitem definitions uploading."
completionMessage="Workitem definitions uploaded.">
<dependencies>
<dependency groupId="Classification"/>
<dependency groupId="Groups"/>
</dependencies>
<taskList filename="WorkItem Tracking\WorkItems.xml"/>
</group>
注意事項 |
---|
groupId 項目會參考其他群組中的 id 項目值。 |
下表描述您用來定義工作群組相依性的項目。 如需如何定義工作群組的詳細資訊,請參閱流程範本 XML 項目參考。
項目 |
語法 |
描述 |
---|---|---|
dependencies |
|
group 的必要子項目。 指定與某個群組相依的其他群組。 |
dependency |
|
dependencies 的選擇性子項目。 指定與此群組相依之另一個工作群組的 ID。 另一個群組必須先完成其工作,這個工作群組才能開始進行。 |
定義工作相依性
以下範例示範如何使用 dependency 項目來指定 WorkItems 工作相依於其 ID 值為 "WITs" 的工作。
<task
id="WIs"
name="WorkItems"
plugin="Microsoft.ProjectCreationWizard.WorkItemTracking"
completionMessage="Work items uploaded"
completionDescription = "Processing the actual work items used by work item tracking">
<dependencies>
<dependency taskId="WITs" />
</dependencies>
下表描述您用來定義工作相依性的項目。 如需如何定義工作的詳細資訊,請參閱定義要處理外掛程式的工作。
項目 |
語法 |
描述 |
---|---|---|
dependencies |
|
task 的選擇性子項目。 指定與某個工作相依的其他工作。 |
dependency |
|
dependencies 的選擇性子項目。 指定與此工作相依之另一個工作的 ID。 另一個工作必須先完成其工作,這個工作才能開始進行。 |