2010-07-15 8 views
5

그래, 지금 며칠 동안 수색했지만이 문제에 대한 우아한 해결책이 무엇인지 알지 못했습니다.teamcity에서 msbuild를 사용하여 원격 서버에 배포

다음은 내가 원하는 일입니다.

  • 나는 인 TeamCity는 그 다음이
  • 그런 다음 원격 서버에 배포 테스트 내 코드
  • 을 구축하고자합니다.

첫 번째 2는 쉽지만 아무도 배포하기에 좋은 옵션이없는 것 같습니다. 이전에 msdeploy로 알려진 웹 배포 지원을 사용하여 서버를 설정했으며 로컬 컴퓨터에서 원격 서버에 게시 할 수 있습니다.

성공적으로 구축하고 테스트 한 후 원격으로 웹 사이트를 게시 할 수 있도록 teamcity를 사용하는 것이 이상적입니다.

제발 누군가가 문제에 대한 해결책을 가지고 있다고 말해주세요! 나는 내가 거의 눈물을 흘리며 술을 마셔야 만 거의 기쁘다.

미리 감사드립니다.

답변

1

저는 같은 문제에 대해서도 작업하고 있습니다. 지금까지 두 가지 못생긴 솔루션이 있습니다 :

1) 고정 된 작업 디렉토리 폴더를 사용하십시오. 그런 다음 코드는 항상 같은 위치에 컴파일됩니다. bin \ RELEASE 폴더에서 XCOPY/FTP를 대상 서버 또는 폴더로 수행하십시오.

2) 큰 버전 번호 (999)를 사용하여 이슈 폴더를 검색 한 다음 해당 버전 번호가있는 폴더를 찾을 때까지 작은 버전 번호를 각각 확인하는 스크립트를 작성하십시오. & 컬릿을 통해 이슈 웹 페이지를 통해 이슈를 얻는 경우 URL에 대해이 작업을 수행 할 수도 있습니다.

3) 일부 msbuild 속성, 환경 변수 또는 기타 유사한 장치를 찾아서 이슈 URL이나 파일 시스템 경로를 얻을 때까지 질문을 게시하십시오 (teamcity가 서버 팜에서의 빌드를 지원하므로 파일 시스템 경로는 어디에서 왔는지 알기 위해 UNC 이름을 포함해야 할 수 있습니다.)

+0

사용 어떻게 끝났는가? –

+1

# 1, 고정 된 작업 디렉토리 폴더를 사용합니다. 분기를 만들면 새로운 고정 작업 디렉토리 폴더를 만들고 분기 빌드 스크립트를 지점의 위치와 함께 업데이트합니다. # 3은 가장 우아하지만, msbuild, batch, powershell에 이르기까지 msbuild, teamcity 및 OS 환경 변수를 참조하는 올바른 방법을 발견하면 여전히 좋지 않습니다. – MatthewMartin

2

우리는 매우 비슷한 작업을 수행하지만 마지막 작업은 자신의 빌드로 분리합니다. 개발자가 커밋 할 때마다 웹 사이트가 위아래로 이동하는 것을 막기위한 야간 기준. 우리는 msdeploy을 사용하지 않은하지만 당신은 다음 링크의 유용을 찾을 수 있습니다 :

Automated deployments with TeamCity, Deployment projects & SVN

Web Deployment Made Awesome: If You're Using XCopy, You're Doing It Wrong

Web Packaging: Creating web packages using MSBuild

관련 문제