我正在尋找一種方法來觸發Cruise Control.net從Subversion post-commit鉤子構建。Trigger Cruise Control.net使用post-commit鉤子構建
我希望這樣才能在提交後直接啓動構建。 我知道這樣做的正常方式(輪詢服務器),但似乎沒有必要繼續輪詢服務器,當它可以完成使用掛鉤。
一個想法是調用儀表板的「強制構建」功能,但即使所有的修改都在樹幹路徑樹之外,也會觸發構建,因此不需要修改以保證構建。
我正在尋找一種方法來觸發Cruise Control.net從Subversion post-commit鉤子構建。Trigger Cruise Control.net使用post-commit鉤子構建
我希望這樣才能在提交後直接啓動構建。 我知道這樣做的正常方式(輪詢服務器),但似乎沒有必要繼續輪詢服務器,當它可以完成使用掛鉤。
一個想法是調用儀表板的「強制構建」功能,但即使所有的修改都在樹幹路徑樹之外,也會觸發構建,因此不需要修改以保證構建。
您使用「Force Build」的想法可能會奏效。
雖然我不理解你對樹幹路徑樹以外的修改的擔憂嗎? 難道你不能在post-commit鉤子中檢查這個,只有在修改後的文件位於/ trunk下時才強制構建
你有沒有考慮過這樣做的缺點?
您有2個變更集。 您提交變更1,建設啓動後,你犯changeset2,不得不等待您的構建/測試完成另一次構建開始建立/變更測試2.
問題與過濾更改之前就是爲什麼CC.NET用途輪詢機制。 (也就是說,在某些情況下,可能需要包含來自構建中的多個開發人員的新更改。)
「強制構建」功能是我認爲可以實現的唯一機制,但是如果你只想從trunk中進行修改,需要你的post-commit鉤子執行相當於一個svn日誌(可能是一個詳細日誌)的管道通過一些適當的過濾設置,那麼只有在需要的時候觸發「force build」。
實際上,svnlook並不是'svn log',而是隻給出當前提交中的文件列表。然後你可以grep列表中的字符串/ trunk /。我在我的一個後提交中這樣做。 – james 2009-06-10 16:51:13
我會建議不要這樣做,但如果您真的想,我會以URL trigger開頭。
URL觸發器監控任何URL的更改,所以你可以讓你的帖子提交鉤子更新HTML文件。另外,如果你使用的是viewvc,你可以有它監視以下網址:
http://servername/viewvc/repos?view=rev&revision=HEAD
該網址會後,每獲得更新提交到SVN
爲此使用URL觸發器與使用標準修改觸發器基本相同。它仍然是一個投票操作。順便說一句,我可能也不會去做。 – FkYkko 2010-02-15 11:47:08
(在評論固定錯字) 我曾考慮下行,但是我的典型場景(小隊,相對快速的構建)的好處會更大。彙總構建使得更難知道哪個修訂打破了構建。 – FkYkko 2009-06-12 06:35:01