CruiseControl.net每個創建(默認)項目下的子目錄:c:\Program File\CruiseControl.NET\server
配置CruiseControl.net項目目錄
我怎樣才能改變這種狀況? (將數據與程序文件混合在一起是一個壞主意......)
我找到了一種爲每個項目配置工件目錄的方法,但這並不完全(它只是項目目錄的子目錄)。
CruiseControl.net每個創建(默認)項目下的子目錄:c:\Program File\CruiseControl.NET\server
配置CruiseControl.net項目目錄
我怎樣才能改變這種狀況? (將數據與程序文件混合在一起是一個壞主意......)
我找到了一種爲每個項目配置工件目錄的方法,但這並不完全(它只是項目目錄的子目錄)。
我在這裏沒有安裝CC.NEt,並且我的atm在工作時無法訪問我的構建服務器,但是如果我沒記錯的話,應該在c:\ Program Files \ CruiseControl.NET中找到2個配置文件夾。
ccnet.exe.config和ccservice.exe.config。
第一個配置文件在使用控制檯應用程序運行CC.NET時使用,第二個配置文件在啓動CC.NET作爲服務時使用。
在這些文件中,您應該找到一個配置設置,它指向描述項目構建過程的配置文件的位置。
編輯: 在ccservice.exe.config文件中,您會在appSettings部分找到一個名爲ccnet.config的密鑰。將此鍵的值更改爲您要放置ccnet.config文件的路徑。
如果該鍵不存在,你可以添加:
<appSettings>
<!-- Without this appSetting ccservice will look for ccnet.config in its own directory. -->
<add key="ccnet.config" value="D:\CCNetConfigFiles\ccnet.config"/>
</appSettings>
這是多麼我已經做到了:
<!DOCTYPE cruisecontrol [ <!ENTITY project1 SYSTEM "file:D:\CCNETConfigFiles\project1\project1buildconfig.xml.config"> <!ENTITY project2 SYSTEM "file:D:\CCNETConfigFiles\project2\project2buildconfig.xml.config"> <!ENTITY project3 SYSTEM "file:D:\CCNETConfigFiles\project3\project3buildconfig.xml.config"> ]>
<cruisecontrol>
&project1;
&project2;
&project3;
</cruisecontrol>
通過這樣做,我可以將每個項目配置放在它自己的文件中,我可以將每個項目配置放在它自己的目錄中。
可能不是您正在等待的答案,但仍然可能會很有趣:我們使用了大約20個具有大約50個不同構建的構建機器。因爲混合數據和程序文件並不是一個好主意,所以我們決定將我們的ccnet安裝放在源代碼控制中。每個服務器在該目錄中(也在源代碼管理中)都有自己的配置文件,並且本地批處理文件或快速啓動ccnet指定使用哪個配置文件。這意味着本地數據(構建日誌)與執行中的數據(ccnet二進制文件/配置文件)混合在一起,但我們已經接受了這種情況。希望這可以幫助。
問候,
Sebastiaan
嗯,它不真的回答我的問題。不過,我確實在我的cc.net安裝下保留了所有非二進制文件。這是個好主意。 – 2009-08-09 18:07:52
設置項目的工作和工件目錄,即可大功告成。他們默認爲:
[ccnet-install-dir]\[project-name]\WorkingDirectory
[ccnet-install-dir]\[project-name]\Artifacts
。如果你設置這些目錄...
[projects-dir]\[project-name]\WorkingDirectory
[projects-dir]\[project-name]\Artifacts
...你可以安全地刪除[ccnet-install-dir]\[project-name]
子樹(你將失去你的項目建立的歷史則)。
那麼你的配置看起來像這樣:
<project name="foo">
[...]
<workingDirectory>C:\projects\foo\WorkingDirectory</workingDirectory>
<artifactDirectory>C:\projects\foo\Artifacts</artifactDirectory>
[...]
</project>
是的,但是*你如何設置這些目錄? – 2009-11-23 18:20:19
@splattered bits:添加配置片段。現在應該更清楚了。 – 2009-11-24 09:50:24
那不是我的問題。項目在ccnet.config中配置。我感興趣的是如何在添加新項目時配置添加了項目_folders_的目錄。 – 2009-08-09 14:03:05
你應該更好地閱讀我的答案,我猜。 – 2009-08-09 14:06:14
我剛纔。也許我誤解了一些東西。 「描述項目構建過程的配置文件的位置」是\ server目錄。在其中存在幾個子目錄,每個項目一個。這些子目錄不包含配置文件。它們大多包含構建的工件。你是否建議在ccservice.exe.config中確定這些子目錄的位置?因爲我找不到它。 – 2009-08-09 18:06:47