問題
當 TFS daily build 失敗時,TFS 預設會自動建立一個 WorkItem (bug) 給執行帳號。這個執行帳號等同於當初建立 TFS 環境的 TFSService 帳號。
問題 TFSService 這個帳號是沒有人在處理的。換句話說,當 bug 指定給 TFSService,沒有人會自動分擔該帳號的 bug。因此建立一個 Team Project 時,就應該指定一個 Build Manager,專案負責該專案建置的問題。
好了,找到了一個人,就稱為 Charles好了。那我們該如何在 TFS 中設定呢?當然我們希望 Build failure 後,直接指定 workitem 給 Charles,而不是給預設的 TFSService。
解法 for TFS 2008
在TFS 2008 時,建置的設定都在 TFSBuild.proj。這個檔案是 xml,因此修改這個 xml 後並 check in 後,就完工了。
首先展開 Team Project ,在 Builds 下找到要修改的 Build definition,按右鍵執行 View Configuration Folder
再來修改(並 check out)TFSBuild.proj。找到 WorkItemFieldValues,並加上 Assigned to=Charles; 完成後記得 check in 回 TFS 哦。
<WorkItemFieldValues>System.Reason=Build Failure;System.Description=Start the build using Team Build;Assigned to=Charles;</WorkItemFieldValues>
此後,晚上再有 build failure ,就會指定給 Charles 了。這個Charles 的值,必須參考建立 WorkItem 時 Assigned to 的下拉框的值。
解法 for TFS 2010
待完成。到了 TFS 2010 後,TFSBuild.proj 已經改用 Workflow Foundation 來設定了。因此,必須修改 xaml 或使用 WF designer 來設計。
沒有留言:
張貼留言