[英]C#/.NET - Continuous Integration and FTP Deployment
注意:我是持續集成的新手
獲得這些功能的“最佳”方法是什么:
而我所說的“最好”是最便宜的選擇,而且易於學習(低頭痛)。
我使用TeamCity和Web部署項目編寫了一篇非常詳細的博客文章,以自動化構建和部署(本地):
我已添加到此以顯示FTP添加
http://www.diaryofaninja.com/blog/2010/09/21/continuous-integration-tip-1-ndash-ftp-deployment
基本上這個過程是這樣的:
然后我確保我只部署SVN倉庫的Trunk,並在合並之前開發並測試分支中的所有內容 - 這樣只會測試部署的測試內容。 在您的構建周期中添加自動化測試,您就可以在天堂進行匹配。
我會和msbuild和mbunit一起進行單元測試。 對於FTP部分谷歌使用FTP進行msbuild自定義任務,你應該烹飪煤氣。
我一直使用CruiseControl ,它工作得很好,但我也聽說過TeamCity的好東西。 關於MSBuild的FTP任務(肯定是你想要的方式),有一些可以在網上找到。 當我上次檢查時(最近不是),我發現的所有內容都有一個或另一個缺點,所以我自己寫了一個(在.NET中包裝FtpWebRequest)。 雖然這可能不是最好的FTP實現,但該任務提供了我需要的功能(上傳目錄結構,遠程刪除)。 我想今天可能有可用的任務提供該功能(否則我可能只是發布我的...)
我們使用Hericus Software的Zed Builds和Bugs Manager做同樣的事情。
我們必須將.Net程序集與C ++ dll結合起來,並將整個程序包裝到一個Java安裝中(想象一下混淆:-))。 我們還使用FTP將構建的一些組件(而不是整個組件)上傳到需要構建產生的部分的其他系統。
在所有事情都被整合在一起之后,關於Zed服務器的好處是它成為我們的系統,每個人都知道從哪里獲取他們的工件。 它處理從Dev到QA到Production的升級,並在整個生命周期中跟蹤構建。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.