感覺像持續集成的普及,這應該是一塊蛋糕,但我很難過。我正在與HG建立TeamCity。我希望能夠將變更集推送到TeamCity監視和運行基於更改的存儲庫。這很容易。TeamCity + HG。只有拉(推?)傳遞版本
接下來,如果構建通過,我希望該變更集被拉入「乾淨」存儲庫......一個僅包含傳遞變更集的庫。應該很容易,但...
TeamCity 6支持多個構建步驟,如果任何步驟失敗,其餘的不運行。我的想法是在最後建立一個構建步驟,執行pull(或可選地推送?)以將傳入的變更集導入乾淨的存儲庫。
我想使用PsExec在存儲庫的框上運行hg。
如果我嘗試運行一個普通的'hg pull',它找不到hg.exe,即使它設置在路徑中並且我已經使用了-w標誌。
我已經嘗試把一個.bat文件放在乾淨的存儲庫中,它需要一個修訂參數,它在本地工作正常。當我嘗試遠程運行.bat文件(使用PsExec)時,它運行得很好,但它試圖在構建代理上運行它。即使我設置了-w參數,它也會在那裏運行.bat文件,但是會嘗試運行構建代理框中的內容。
我只是在我的方法?似乎這是一個非常明顯的事情,要麼我的Google技能正在減弱,要麼沒有人認爲這是值得寫的。無論哪種方式,我被困在SVN的土地試圖脫身,所以我希望得到一些幫助!
這工作實際上讓它運行... ish。 – 2010-12-12 05:44:09
然後你應該把這個標記爲答案......是的。關於它的是什麼? – 2010-12-12 07:13:34
對不起......在發佈這個帖子後,昨天晚上試圖這麼做,但是在發佈後,Stack下降了大約30秒的維護時間。 :)我必須確保TeamCity服務在有權訪問遠程框的帳戶下運行。我堅持的唯一的事情是,如果使用-d運行psexec,它將返回它啓動的PID的退出代碼。如果你在沒有-d的情況下運行它,它會無限期地掛起。不幸的是,TeamCity依賴於0的退出碼來確定合格/不合格。感謝您的提示,但它實際上運行了批處理文件,這就是我所堅持的。 – 2010-12-12 19:00:48