2008-11-14 59 views
2

目前我的任務是完成日常構建任務。我們有一個帶有SQL Server 2005後端的ASP.NET 2005網站。我們目前的源代碼控制是Visual Source Safe 2005.如何以廉價/免費的方式設置構建服務器?

在這一點上,我使用每日構建的蠻力方法。

  1. 獲取最新版本的源代碼
  2. 獲取最新版本的數據庫發行腳本的
  3. 備份舊的網站文件目錄
  4. 發佈新的代碼,以我的本地機器
  5. 運行我的服務器上保持測試/舞臺網站正常運行
  6. 將新創建的文件推送到網站
  7. 在測試數據庫上運行SQL腳本(假設更新,否則我不打擾)
  8. 在測試服務器上測試網站。

綜觀自動化的理念構建令我着迷,因爲這意味着我每天早上做的少。你會如何推薦我繼續?在向我的老闆呈現它之前,我想有一個完全充實的想法。

+0

我遇到的一個問題是關於#8。我的用戶需要在日常網站上進行日常構建,以便比較以前的日期構建與今天的構建。我無法免費獲得這個。由於我們有獨特的域名,我們結束了註冊唯一的域名,如XXX-29th.com,並使用我們的內部DNS服務器來爲網站提供服務。然後挑戰是揭露這個外部世界,我們通過使用Route 53來解決它 – asyncwait 2012-07-12 09:04:28

回答

2

所有你正在做的事情可以由一組批處理文件來執行,具體取決於你的測試環境的自動化程度。主批處理文件可以在午夜或任何時候作爲「計劃任務」啓動。這就是我們在這裏和在其他地方工作的'便宜'。如果您需要特定批次的幫助,我可以提供樣品。

3

嘗試CruiseControl.Net。它是免費的,無論您想要執行哪種自定義日常/連續例程,您都可以隨腳本一起添加。請記住,這不僅僅是每日(每晚)的構建,還有關於讓你及時發現構建錯誤(因爲它在每次源提交/登記之後不斷構建)。您不一定要在每個可能的平臺上測試每個代碼機會並構建配置,但CC可以爲您完成(在後臺)。


http://confluence.public.thoughtworks.org/display/CCNET/Visual+Source+Safe+Source+Control+Block

+0

我不知道CC.NET可以做到這一點。尼斯。增加了有關配置CC與VSS一起使用的文檔的鏈接。 – Will 2008-11-14 15:52:14

4

TeamCity爲我運作良好。它有一個非常簡單的設置。將它與一個MsBuild腳本結合起來用於您的操作,並且您是自動化的。

1

我第二次(或第三次)Subversion/CruiseControl.net的推薦。另外,如果合適,請查看SVSD的託管服務,如CVSDude。在這個過程中,你可能會熟悉MSBuild。一旦你安裝好了,它是非常棒的。

成本並非來自工具甚至硬件的授權,而是來自您建立和維護系統的時間 - 並且取決於您在做什麼,這可能會變得很重要。

從基礎開始,並逐步提高它隨着時間的推移。和其他任何東西一樣,如果您嘗試通過大量的自動化和功能走出大門,您可能會發現自己已經陷入了數週的時間。

4

對於構建管理我全力推薦的TeamCity。它不需要IIS6(就像CC.net一樣),因爲它運行在它自己的Tomcat副本上,並且安裝全部通過各種形式完成。這對我來說很重要,因爲構建服務器只是一個XPPro盒子。它與SVN很好地集成,沒有像CruiseControl.Net那樣的瘋狂的XML文件操作。對我來說是一場勝利。

對於我們使用楠電子郵件發送到不同的人構建亞軍,複製打包構建他們應該去哪裏,運行NUnit的和NCover和部署軟件我們的網絡農場。

對於自動化測試我們使用華廷。

http://www.nunit.org/index.php http://www.jetbrains.com/teamcity http://ncover.sourceforge.net/ http://subversion.tigris.org/ http://nant.sourceforge.net/ http://watin.sourceforge.net/

1

無論你使用,在虛擬機安置他們的工具(例如,VMware的)。

當設備不可避免地南下,可以將圖像複製到任何計算機,而不錯過任何一個節拍,因爲你的構建服務器決定休假一天,假設當然,你回來了。