我们在ASP.NET应用程序上安装了CC.NET。当我们构建项目时,ASP.NET应用程序被预编译并复制到网络共享中,服务器从该共享中运行应用程序。
服务器与开发环境略有不同,我们的登台环境中的下一台服务器更是不同。不同之处在于特定的配置文件等等-所以我想排除一些文件-或者在预编译的应用程序被复制到网络共享之前删除它们。
我的配置文件如下所示:
<project name="Assembly.Web.project">
<triggers>
<intervalTrigger seconds="3600" />
</triggers>
<sourcecontrol type="svn">
<trunkUrl>svn://svn-server/MyApp/Web/Trunk</trunkUrl>
<workingDirectory>C:\build-server\Assembly\Web\TEST-HL</workingDirectory>
<executable>C:\Program Files (x86)\SVN 1.5 bin\svn.exe</executable>
<username>uid</username>
<password>pwd</password>
</sourcecontrol>
<tasks>
<msbuild>
<executable>C:\Windows\Microsoft.NET\Framework64\v3.5\MSBuild.exe</executable>
<workingDirectory>C:\build-server\Assembly\Web\TEST-HL</workingDirectory>
<projectFile>C:\build-server\Assembly\Web\TEST-HL\Web\Web.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
<targets>Build</targets>
<timeout>900</timeout>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
</msbuild>
</tasks>
<publishers>
<buildpublisher>
<sourceDir>C:\build-server\Assembly\Web\PrecompiledWeb</sourceDir>
<publishDir>\\test-web01\Web</publishDir>
<useLabelSubDirectory>false</useLabelSubDirectory>
<alwaysPublish>false</alwaysPublish>
</buildpublisher>
</publishers>
</project>如您所见,我使用buildPublisher将预编译的文件复制到网络共享。我想在这里做的是,1)在复制之前删除某些文件,或者2)在复制后替换这些文件。
我不想让一些应用程序运行,监视特定文件的更改,然后用其他文件替换这些文件。我想要的东西要么是由CC.NET完成的,要么是由CC.NET触发的。
你能用CC.NET启动一个.bat文件吗?
发布于 2008-09-22 08:14:25
你必须使用NAnt来做这类事情。这是Task Reference of Nant..
发布于 2008-09-22 08:07:41
我使用NAnt task进行所有的发布、部署、清理等操作。
发布于 2008-09-22 09:39:32
看看MSDEPLOY或Web Deployment Projects吧。有一个问题将为您提供more detail here
https://stackoverflow.com/questions/113731
复制相似问题