Deployment 如何使用CruiseControl.NET&;部署/发布Web应用程序;MSBuild?

Deployment 如何使用CruiseControl.NET&;部署/发布Web应用程序;MSBuild?,deployment,msbuild,cruisecontrol.net,Deployment,Msbuild,Cruisecontrol.net,如何使用CruiseControl.NET和MSBuild部署/发布Web应用程序?我是CCNET的新手,能够从SVN获取最新的源代码,并使用MSBuild 3.5进行构建。如何使站点发布到另一个(开发)服务器? 感谢您的指点/示例 干杯, ~ck我通常使用该任务将文件部署到远程服务器上。您还可以使用xcopy命令编写脚本进行部署。您也可以使用它来帮助进行部署。在WDP中,可以使用ExcludeFromBuild项排除这些文件。有关更多信息,请参阅 这将处理站点,使其得到预编译,然后发布到另一个

如何使用CruiseControl.NET和MSBuild部署/发布Web应用程序?我是CCNET的新手,能够从SVN获取最新的源代码,并使用MSBuild 3.5进行构建。如何使站点发布到另一个(开发)服务器? 感谢您的指点/示例

干杯, ~ck

我通常使用该任务将文件部署到远程服务器上。您还可以使用xcopy命令编写脚本进行部署。

您也可以使用它来帮助进行部署。在WDP中,可以使用ExcludeFromBuild项排除这些文件。有关更多信息,请参阅


这将处理站点,使其得到预编译,然后发布到另一个dev服务器,这取决于您现在的部署方式。如果复制到网络共享或ftp,则也可以使用MSBuild执行这些操作。我不熟悉前面回答中提到的构建发布者。

我发现非常有用。实际上,您将ccnet.config文件指向在项目目录中创建的MSBuild.xml文件。在MSBuild.xml文件中,您可以创建一个目标,该目标将使用_CopyWebApplication选项来生成和发布web应用程序,该选项用于在我使用的CruiseControl.NET中的CI服务器上生成网站后,将网站发布到开发服务器。它要求您在将成为部署目标的任何服务器上安装部署服务。然后,您只需将执行步骤添加到运行msdeploy.exe的构建过程中即可。以下是我在NAnt中使用的一个示例:

        <exec program="C:\Program Files\IIS\Microsoft Web Deploy V2\msdeploy.exe">
        <arg value="-verb:sync"/>
        <arg value="-source:dirPath=&quot;${tmpdir}&quot;"/>
        <arg value="-dest:dirPath=&quot;${deploy.dir}&quot;,computerName=http://${servername}/msdeploymentservice/"/>
    </exec>


通过使用WebDeploy,您可以轻松地完成网站内容的完全同步,同时删除不应该存在的内容。它还具有其他选项,可以执行忽略某些目录和发出命令以回收应用程序池等操作。

我的CCNET解决方案使用Web.config转换

<tasks>
    <msbuild>
        <executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable>
        <workingDirectory>E:\VersionesCC\Trunk_4\SBatz\Gertakariak_Orokorrak\GertakariakMS\Web</workingDirectory>
        <projectFile>GertakariakMSWeb2.vbproj</projectFile>
        <targets>Build</targets>
        <timeout>600</timeout>
        <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger>
        <buildArgs>
            /noconsolelogger /p:Configuration=Release /v:diag
            /p:DeployOnBuild=true
            /p:AutoParameterizationWebConfigConnectionStrings=false
            /p:DeployTarget=Package
            /p:_PackageTempDir=E:\Aplicaciones\GertakariakMS2\Web
        </buildArgs>
        </msbuild>
</tasks>

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
E:\VersionesCC\Trunk\u 4\SBatz\Gertakariak\u orokorak\GertakariakMS\Web
GertakariakMSWeb2.vbproj
建造
600
C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll
/noconsolelogger/p:Configuration=Release/v:diag
/p:DeployOnBuild=true
/p:AutoParameterizationWebConfigConnectionStrings=false
/p:DeployTarget=Package
/p:_PackageTempDir=E:\Aplicaciones\GertakariakMS2\Web

如果您想发布您的web应用程序(mvc),但服务器上没有安装visual studio,您将如何进行构建和发布?