2011-04-07 4 views
22

나는 .NET 웹 사이트 프로젝트를 배포하기 위해 Jenkins/Hudson CI를 사용 해왔다. 나는 MSbuild plugin을 사용하여 프로젝트를 빌드 한 다음 xcopy를 사용하여 서버에 복사했습니다.젠킨스/허드슨과 함께 .NET을 배포

publish feature in Visual Studio을 사용하면 다른 파일 세트가 표시됩니다. 나는 구성 변환 작업을 가지고 있지만 모든 .cs 파일로 끝나고 winmerge 비교하면 바이너리가 다른 것을 보여줍니다.

따라서 게시 기능과 동일한 방식으로 Jenkins을 작동 시키거나 xcopy 배포가 기능적으로 동일한 지 확인하십시오.

+8

EXE 및 DLL 파일 헤더에 타임 스탬프가 포함되어 있습니다. 다른 빌드는 정확한 동일한 파일을 생성하지 않습니다. –

답변

23

내가 Web Deploy를 사용하여 및 젠킨스가 포함 된 박쥐 파일을 실행하는 최종 빌드 단계로 좋은 경험을 했어 :

msdeploy.exe -verb:sync -source:package=%PACKAGE% -dest:auto,ComputerName=%TARGETHOST% 

당신은 빌드 서버와의 웹 배포 패키지를 설치해야합니다을 IIS의 확장.

6

저는 MSBuild Jenkins 플러그인을 사용하여 프로젝트를 빌드 한 다음 배포합니다. 다른 답변에서 언급했듯이 Web Deploy을 설치해야합니다. VS 또는 중,

/p:Configuration=Debug /p:DeployOnBuild=true /p:PublishProfile=publishProfileName 

은 물론, 먼저 제작 프로파일을 작성해야합니다 : 젠킨스의 프로젝트 구성 페이지에서

, 당신하여 명령 줄 인수 필드에 다음을 추가 할 필요가 IIS에서 내 보낸 다음 MSBuild Build File 필드에 솔루션 파일 경로를 지정해야합니다.