2013-10-07 5 views
0

현재 크루즈 컨트롤 .Net을 사용하고 있습니다. 이 배포 프로세스를 자동화하고 싶습니다. 지금 아래의 단계를 msbuild 스크립트로 수행하고 있습니다. 여기크루즈 컨트롤을 사용하는 배치. NET

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

까지 모든 것을 내가이 함께 진행하는 방법을 제안 목소리로 듣기에는 좋은 사람 같던데 작동하지 않은 system.but하지만 서로 다른 server.i 추측이 지퍼 폴더를 배포하는 방법, 내가 ftp를 사용해야 괜찮습니다 당신이

+0

. 모든 논리를 msbuild에 기록하십시오. cc.net 소스 제어 작업을 사용하여 소스 제어 (아마도 하나의 .msbuild 파일 (일명 .proj 파일) ............)를 가져온 다음 cc.net에서 "msbuild .exe MyBuildDef.proj ". – granadaCoder

답변

0

서버에 폴더/우편을 업로드하려면, CC.NET라는 buildin 작업이 모든 샘플 데모 프로젝트 또는 코드를 제공하는 경우 시나리오는 괜찮을 것 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

0

나는 "msbuild land"내부에서 논리를 유지할 것입니다 (보통 99 %입니다.).

이렇게하면 CC.NET (예 : TFS)에서 벗어나면 번역해야하는 코드가 최소화됩니다.

다음은 작업입니다.

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

예 :

당신은 "큰 공상 MSBuild.exe를 실행 부"로 CC.NET 생각해야 할
/// <Target Name="DeployWebsite"> 
/// <FtpUploadDirectoryContent 
/// ServerHost="ftp.myserver.com" 
/// Port="42" 
/// Username="user" 
/// Password="[email protected]" 
/// LocalDirectory="c:\build\mywebsite" 
/// RemoteDirectory="root\www\mywebsite" 
/// Recursive="true" 
/// />