2010-12-08 9 views
0

我正在使用TFS 2010 Build。我有一個使用TFS 2010中庫存的DefaultTemplate.xaml模板的構建定義,並且在構建定義中將C​​reate Work Item on Failure屬性設置爲True。我刻意改變了我的項目,打破了構建。當啓用失敗時創建工作項目時,TFS 2010 Build會給出WorkItemStore錯誤

當構建運行時,我看到編譯錯誤反映在Visual Studio中的TFS構建日誌中,但當TFS構建接下來嘗試生成工作項時,出現錯誤「值不能爲空參數名稱:WorkItemStore」對於破碎的構建。

我跟蹤了DefaultTemplate.xaml中的活動(請參閱下面相當冗長的路徑),其中爲破損的構建創建了工作項目,並且我看到它使用Microsoft.TeamFoundation.Build.Workflow.Activities。 OpenWorkItem類來創建工作項目。合適的值似乎填寫在創建工作項活動的屬性窗口中,所以我沒有看到我可以將WorkItemStore傳遞給它的位置,我甚至不知道此設置的適當值。

的路徑創建工作項活動:
過程>序>運行代理>嘗試編譯,測試,和準變更和工作項>序>編譯,測試,和準變更和工作項>嘗試編譯並測試>編譯和測試>對於BuildSettings.PlatformConfigurations中的每個配置>編譯和測試配置>如果BuildSettings.HasProjectsToBuild>對於BuildSettings.ProjectsToBuild中的每個項目>嘗試編譯項目> Handle Exception>如果CreateWorkItem>創建非工作項目-Shelveset Builds>創建工作項目

回答

0

構建代理運行的服務帳戶是否可以訪問團隊項目中的工作項目?這可能是WorkItemStore對象爲空的原因。

通常構建代理服務帳戶被添加到已在每個團隊項目上都具有此訪問權限的「Project Collection Build Service Accounts」組中。但是,如果您已經自定義了流程模板,組/權限或未正確設置構建代理 - 那麼權限可能不正確。

+0

好點。我希望這可以工作,但即使添加我用作集合管理員的TFS Build服務帳戶,它仍然無法工作。我使用TFS 2010的庫存DefaultTemplate.xaml流程模板,當我再次檢查我的TFS Build代理設置時沒有什麼突出的。我很難過。 – 2011-02-15 15:30:53

相關問題