0

目前我正在使用 Cruise Control .Net。我想自动化这个部署过程。现在我正在按照以下步骤执行 msbuild 脚本。

GetSource=Get the source code from svn.  
Before Build=build the web project.  
Publish=publish the web project.  
zip=zip the publish folder.

到这里为止一切都很好,但是如何在不同的服务器上部署这个 zip 文件夹。我想,我应该使用 ftp 系统。但我还没有使用它。如果你提供,请建议如何继续这个场景会很好任何示例演示项目或代码

4

2 回答 2

0

要将文件夹/ zip 上传到服务器,CC.NET 有一个名为的内置任务ftp

 <ftp>
   <serverName>ftp.isp.com</serverName>
   <userName>john</userName>
   <password>doe</password>
   <action>UploadFolder</action>
   <ftpFolderName>site/config</ftpFolderName>
   <localFolderName>d:\website\config</localFolderName>
   <recursiveCopy>true</recursiveCopy>
 </ftp>

参考: http ://www.cruisecontrolnet.org/projects/ccnet/wiki/Ftp_task__-_Publisher

于 2013-10-07T14:36:27.747 回答
0

我会保留逻辑(尽可能多地,通常是 99%)......在“msbuild land”内。

这样,如果您离开 CC.NET(例如 TFS),您就可以最大限度地减少必须翻译的代码。

这是任务。

https://github.com/loresoft/msbuildtasks/blob/master/Source/MSBuild.Community.Tasks/Ftp/FtpUploadDirectoryContent.cs

例子:

/// <Target Name="DeployWebsite">
/// <FtpUploadDirectoryContent
/// ServerHost="ftp.myserver.com"
/// Port="42"
/// Username="user"
/// Password="p@ssw0rd"
/// LocalDirectory="c:\build\mywebsite"
/// RemoteDirectory="root\www\mywebsite"
/// Recursive="true"
/// />
于 2013-10-08T13:20:10.337 回答