2012-04-01 23 views
0

一旦TFS構建被刪除,我試圖使用CruiseControl將構建正確地移動到IIS文件夾。 我打算讓它運行一個批處理腳本,然後在批處理腳本中使用「call」調用2-3個其他腳本。帶鏈接批處理文件的Cruisecontrol狀態

我需要從彼此內部調用批處理文件,因爲我也將一些參數從一個腳本傳遞到下一個。

我可以以某種方式在巡航控制面板上顯示來自各種批處理文件的有意義的狀態消息,並在下一個批處理文件被調用時進行更改?

我們設置了一下:

我要補充一點,我們應該使用TFS進行版本控制和構建。 TFS擁有自己的專用放置服務器,一旦我們排隊構建,就可以成功構建並刪除它。這個代碼,我們可以通過配置IIS的應用程序服務器的網絡共享文件夾訪問。

問題是,一旦構建完成,我們需要將代碼放在我們的應用程序服務器上,運行IIS。現在,代碼可以在環境中運行之前有多個小步驟。就像我們需要手動添加一些dll並且獲取當前正在運行的代碼的備份。所以有步驟,發佈TFS構建,是我嘗試使用CruiseControl進行auotmate的。

+2

你使用Team Build(TFS)_and_CruiseControl.Net嗎?如果是這樣,爲什麼? – 2012-04-01 19:45:51

+0

增加了一些關於我們設置的更多細節。請讓我知道,如果有任何其他細節可能需要更好地瞭解我的查詢 – 2012-04-01 23:31:26

回答

0

我會完全放棄CruiseControl並使用Team Build作爲唯一的構建控制器。通過增加TFS Build Extensions,您可以輕鬆設置將從二進制文件複製到域中任何位置的文件夾的作業副本部分。您還可以從使用Powershell任務中獲益;不知道你的批處理文件到底是什麼,我很確定你可以用一個Powershell腳本替換它們(可以遠程運行)。

+0

我不想將應用程序部署到IIS,每次構建都被激怒。我只需要在需要時部署特定版本。因此可能會有10個由TFS構建的構建,但我可能只需要部署最後一個構建。 – 2012-04-04 00:29:25

+0

如果您事先知道某個構建將部署在IIS上,那麼部署步驟可以使用流程參數輕鬆控制到Team Build。如果事後決定(取決於構建的質量),部署部分的單獨構建工作流程將是我的解決方案。只需要一個構建引擎就可以獲得很多好處。 – 2012-04-04 05:40:53

+0

tbergstedt,那麼TFS能滿足我的下面需求嗎? a)如果需要,在IIS文件夾中的另一臺服務器上構建並複製代碼。 b)在將代碼複製到IIS服務器之前,將一些額外的DLL作爲平面副本添加到bin文件夾中c)在複製到IIS文件夾之前,將已安裝的IIS代碼文件夾中的代碼備份到新文件夾中d)在此副本開始之前,停止IIS,並在複製完成後啓動IIS。 e)TFS甚至可以訪問另一臺服務器的文件夾結構來完成所有這些工作嗎?f)爲RDL和SQl腳本創建可部署的文件夾,並將其簽入TFS – 2012-04-15 10:48:27

0

我認爲CC.Net,Green,Yellow,Red只有3種狀態。

我會做的是在您的流程中添加一個電子郵件步驟,在每個步驟完成時向任何人發送電子郵件。你也可以設置一個推特賬號,並使用LinqToTwitter或其他方式發佈推文。要做到這一點,你可能必須編寫一個控制檯應用程序,並從你的bat文件中調用控制檯應用程序來做推文,但這會很酷。