2009-11-05 2 views
0

웹 프로젝트는 SVN을 통해 소스 제어됩니다. 로컬, 테스트 및 프로덕션 빌드를 빌드하는 MSBuild 파일이 들어 있습니다. 또한 CruiseControl.NET을 사용하여 수동으로 서버에 프로덕션 및 테스트 버전을 배포합니다 (모든 커밋이 끝난 후가 아님).빌드 및 배포를위한 강제 규칙

질문은 CC.NET 웹 프로젝트를 사용하여 프로덕션 배포가 완료되면 프로덕션 빌드 (테스트 또는 기타가 아닌)를 사용하여 빌드되었는지 확인하는 것입니다. 프로덕션으로 빌드하고 배포 할 때 특정 단계를 강제 실행하는 방법 (예 : JS 및 CSS 압축, debug = "false"등으로 컴파일)? 이제는 모든 개발자가 MSBuild 파일을 변경할 수 있습니다 (따라서 제작 빌드에서 JS를 압축하는 것을 잊을 수 있습니다).

답변

0

나는 NAnt와 함께 CruiseControl을 광범위하게 사용했지만 MSBuild는 사용하지 않았습니다. 각 빌드 유형 (즉, local/test/prod)마다 다른 MSBuild 파일을 가지고 있습니까? CCNet 통합자가 명시 적으로 대상 환경에 적합한 옵션을 호출 할 수 있도록 매개 변수화 할 수있는 단일 매개 변수를 가질 수 있습니까? 그것이 CCNet에서 구성한 릴리스 후보 빌드 대 연속 통합입니다. 하나의 마스터 NAnt 빌드 스크립트와 각 타겟 env에 대한 다른 CC 통합 자 (필요한 타겟 파라미터 또는 타겟 값). 나는 당신이 MSBuild vars/target과 아주 비슷한 것을 할 수 있다고 상상합니다.

+0

예. 단일 빌드 파일을 사용하고 매개 변수를 전달합니다. 그러나 해당 빌드 파일은 모든 개발자가 수정할 수 있으며, 예를 들어 배포 스크립트에 새로운 기능을 추가하면 개발자가 문제를 일으키는 배포 스크립트에 추가하는 것을 잊어 버릴 수 있습니다. 해당 빌드 파일에 새로운 배포 "기능"이 포함되어 있는지 확인하는 방법은 무엇입니까? – Sazug