2014-04-15 2 views

답변

1

야간 구성의 일정과 '작은 테스트 제품군'의 VCS 트리거에 따라 트리거를 지정해야합니다.
물론 한 구성 내에서 빌드 스크립트의 시간을 확인하고 조건에 따라 작업을 수행 할 수는 있지만이 작업을 해결하는 것은 좋지 않습니다.

1

이 경우 두 가지 빌드를하고 싶습니다. 이것은 제가 지금까지 해왔 던 모든 프로젝트에서 제가해온 매우 일반적인 패턴입니다.

내가 사용 패턴을 설정하는 것입니다 인 TeamCity

빌드 서로 다른 두

먼저 솔루션을 구축하고의 속성이나 플래그의 일종에 의해 필터링 된 단위 테스트의 부분 집합을 실행하는 지속적인 통합 빌드입니다 테스트. MsTest와 C#의 경우 이것은 TestCategoryAttribute가됩니다. 이 빌드는 누군가가 코드를 체크인 할 때마다 실행되도록 설정되어 있으며 실행 속도가 빠르며 명백한 상황이 발생했는지 확인할 수있는 빠른 방법을 제공합니다.

두 번째 빌드는 모든 사람이 집에 돌아 갔을 때 심야에 예정되어 있으므로 필요한 경우 훨씬 더 복잡하고 시간이 소요되는 야간 빌드입니다. 이 빌드는 솔루션을 빌드하고, CI 빌드에서 실행되지 않는 것을 포함하여 모든 유닛 테스트를 실행하고, 모든 것이 좋은 경우 솔루션을 패키징합니다. 또한이 빌드는 증분 개정 번호 등을 수행합니다.

빌드 트리거를 사용하여 다른 빌드 단계를 실행할 수있는 방법이 있습니까? 내가 찾은 것이 아닙니다. 그러나 그것이 내가 흔히 말하는 것이나 모범 사례는 아닙니다. 두 가지 목적을 위해 두 개의 별개의 빌드를 설정하십시오. TeamCity에서는 빌드 정의간에 VCS 루트와 같은 공통 사항을 쉽게 공유 할 수 있습니다.

1

야간 테스트를 포함한 모든 작업을 수행하는 빌드 구성을 만듭니다. 편집 설정에서 '템플릿 추출'을 선택하십시오. 이 템플릿을 기반으로 새 구성을 만들고 느리게 실행되는 테스트를 비활성화하십시오. 각 구성에는 자체 트리거가있을 수 있지만 동일한 단계로 두 구성의 유지 관리 오버 헤드가 없습니다. 두 가지 별도의 구성이 있지만 빌드 단계를 공유하지만 유일한 차이점은 트리거 및 사용할 수있는 단계입니다.

관련 문제