2016-01-21 36 views
0

我使用BAT文件來運行TF命令行獲取最新版本,然後調用Sonar runner BAT文件對最新代碼運行分析。 我已使用Task Scheduler每小時自動執行此操作。 我只想在TF獲取新代碼的情況下運行Sonar分析,否則應跳過。使用TF命令行獲取最新版本,僅當新代碼已簽入時,如何運行SonarQube分析?

我該如何做到這一點?我嘗試搜索退出代碼,但沒有任何告訴我是否有新代碼被提取。

回答

2

Visual Studio團隊服務或TFS 2015+

您可以配置構建要在持續集成(CI)觸發,即每當更改,構建被觸發。構建可以是任何你想要的,從調用適當的msbuild/mstest和SonarQube任務或使用cmd/powershell/bash做你自己的東西。

要了解更多有關整合SonarQube分析TFS構建見:https://blogs.msdn.microsoft.com/visualstudioalm/2015/08/24/build-tasks-for-sonarqube-analysis/

TFS 2013

您可以配置一個XAML構建對持續集成運行

通過腳本

當改變happ時,連續集成構建是運行邏輯的推薦方式在你的代碼中。但是,如果您想使用「tf get」 - 您可以捕獲「tf get」的輸出,並且如果匹配「所有文件都是最新的」,則不執行任何操作,否則會觸發SonarQube執行。

+0

非常感謝@ bogdan-gavril-msft。將首先嚐試通過腳本。最終的計劃仍然是將其整合到CI,這將會在成功之後出現。 –

+0

另外,@ bogdan能否幫我指出一篇描述SonarQube CI集成的好文章? –

+0

Hi @AhmadZaib - 你正在使用什麼構建系統?團隊建設(也稱爲XAML構建|)或新的TFS構建(可與TFS 2015+或與服務產品一起提供),還是非微軟的? –

相關問題