2017-08-25 85 views
0

我們正在運行TFS 2015 Update 3的前提下。TFS 2015 vNext構建 - 通過腳本獲取特定源碼

我們有一個構建定義,從Gated checkin構建中獲取最新的成功刪除以運行測試。對於這些測試,我們還需要相同簽入的源代碼。 如果我們排隊一個新的構建它會得到最新的來源,但它可能是這些來源是不同的變化比最後一次成功的下降。主要是因爲它可能需要大約2分鐘才能拉動源,如果到那時新的門控簽入已經完成,獲取之後的任務將獲得比已經拉動的源的更新版本。

有沒有一種方法可以讓構建先運行一個腳本,說出尋找最新成功構建的腳本。然後使用該版本中的變更集編號來執行該特定變更集的獲取源?

+0

爲什麼你需要編譯的應用程序的源代碼來測試編譯的應用程序? –

+0

我們需要重建SonarQube分析的項目,並且我們需要確保源代碼與複製的二進制文件的版本相同。 此外,如果我們的驗收測試版本構建完成,我們希望確保使用相同版本的源代碼,以確保您的測試運行,這意味着您期望的源代碼版本。如果開發人員在更新測試後立即使用,則可能會獲得更新的版本。 – Nico

+0

@Nico對於SonarQube分析,您可以在同一個構建內完成,爲什麼要重建?你怎麼能確保最新成功構建的變更集編號是你想要的確切變更集?我的意思是如果另一個構建完成,然後觸發您的構建。所以,正如我的理解,如果您想確保使用相同版本的源代碼,則只需使用特定的變更集手動構建即可。 (Quere build>選擇特定的變更集) –

回答

0

我們無法阻止獲取源代碼步驟獲取最新源代碼,我們只能添加命令行/批處理腳本或PowerShell步驟來運行腳本以獲取特定的變更集版本源代碼。然後複製要構建的特定源。

在你的情況下,我認爲它沒有意義,如上所述,我們無法確定最新成功構建的變更集編號是您想要的確切變更集。

似乎唯一的方法是手動構建,具體構建變更集。