2008-11-06 50 views
2

我使用CruiseControl.NET自動構建我的.NET 3.5 Web應用程序,它可以工作。但是,有沒有辦法自動創建這些版本的ZIP文件,並將ZIP文件放入單獨的目錄中?如何創建Cruise Control版本的ZIP文件?

我看到這是可能的使用NAnt,但找不到如何得到這個工作的一個例子。

任何人都可以提供幫助/例子嗎?

回答

1

如果您使用Nant,那麼Zip task不適合您嗎?

0

我們荏苒一個CruiseControl.NET項目

的來源,但我們使用螞蟻

<target name="zipProject"> 
    <mkdir dir="output"/> 
    <zip destfile="output\sources.zip" basedir="C:\project\src" /> 
</target> 

我不知道惡性,但我希望它是類似

0

@David:NAnt Zip任務就是我所追求的,是的,但我在問如何將它作爲自動CruiseControl.NET構建的一部分進行集成。如果你看看NAnt documentation for the cruise control config,它並沒有說明我的CruiseControl配置中的<tasks> XML節點內是否可以運行NAnt任務 - 它只能說它可以是<schedule>的一部分。

我發現了幾個設置CruiseControl配置的例子和一些NAnt任務的例子,但沒有將這兩個任務整合在一起:特別是壓縮CruiseControl構建。

如果任何人有CruiseControl配置的一些示例XML,連接到NAnt zip任務,請在此處發佈示例。

乾杯。

+0

哎呀,它剝離了我的XML節點示例,應該這樣說:「...從我的CruiseControl配置中的< tasks > XML節點中 - 它只能說它可以是< schedule >的一部分...」 – 2008-11-06 14:50:12

2

我剛剛在CC機器上添加了這樣的Nant任務。

http://nant.sourceforge.net/release/latest/help/tasks/zip.html

注意在最初查看zip壓縮包,它可能看起來好像所有的文件都在同一水平,即沒有文件夾,但實際上他們的文件夾會被保留。

注意如何排除文件類型或文件夾。

你可以採取只包括你想要的文件類型和排除其餘的方法。

首先定義源文件爲allcode.dir的位置以及zip文件sourcebackup的名稱和位置。拉鍊

現在這裏是惡性任務

<zip zipfile="${sourcebackup.zip}" includeemptydirs="true" verbose="true"> 
<fileset basedir="${allcode.dir}"> 
     <include name="**/*" /> 
     <exclude name="**/_resharper*/**" /> 
     <exclude name="**/build/**" /> 
     <exclude name="**/obj/**" /> 
     <exclude name="**/bin/**" /> 
     <exclude name="**/*.dll" /> 
     <exclude name="**/*.scc" /> 
     <exclude name="**/*.log" /> 
     <exclude name="**/*.vssscc" /> 
     <exclude name="**/*.suo" /> 
     <exclude name="**/*.user" /> 
     <exclude name="**/*.pdb" /> 
     <exclude name="**/*.cache" /> 
     <exclude name="**/*.vspscc" /> 
     <exclude name="**/*.msi" /> 
     <exclude name="**/*.irs" /> 
     <exclude name="**/*.exe" /> 
</fileset> 

<echo message="########## Zipped##########" /> 

像你其他任務一樣,從你的cc build調用它。 如果可能的話,我們發現每個CC項目都會調用單個任務,那麼您只需更改nant腳本,並且可以在本地計算機上運行nant腳本。

例如,在項目區,我們有一個目標「打造」,這是工作的一部分調用ZipSource

<targetList> 
      <target>Build</target> 
     </targetList> 

我們用上述的BizTalk項目。

享受。