문제

나는 하나의 서버를 사용하여 지속적으로 그리고 야간에 동일한 프로젝트를 구축하고 있습니다. 그러나 낮에는 수정이 존재하는 경우 야간 빌드가 빌드를 원합니다. 나는 두 빌드가 동일한 작업 폴더.

내가 고려하는 두 가지 옵션은 다음과 같습니다.

  1. 연속 빌드를 폴링하고 지속적인 빌드가 발생한 경우 야간 빌드 만 빌드합니다. 일부 토큰 시스템을 사용하여 (연속 빌드 세트 토큰, 야간이 지워진 토큰)를 사용합니다.

  2. 소스 코드를 마지막 빌드 타임으로 되돌리기 위해 사전 빌드 작업을 실행합니다.

빌드 스크립트를 분리 할 때 두 번째 옵션에 기울고 있지만 훨씬 더 어려운 작업 인 것 같습니다.

이 작업에 대한 제안과 팁은 감사하겠습니다!

추가 정보 :

CI 빌드는 하나의 구성으로 솔루션을 빠르게 빌드하며 빠른 단위 테스트를 실행할 수 있습니다.

야간 빌드는 빌드 환경을 청소하고, 소프트웨어를 빌드하고, 설치자로 패키지를 만들고, 확장 된 테스트를 실행하고, 소스 코드 저장소 라벨을 표시하고, 수동 테스터를 위해 설치 프로그램을 서버 공유에 배포하고, 테스트 팀에게 테스트 팀을 이메일로 보내십시오. 만들어진.

낮에는 체크인이있는 경우 야간 빌드가 발생하기를 원합니다. 테스터는 본질적으로 동일한 빌드에 대한 반복 이메일로 괴롭힘을 당하지 않습니다.

도움이 되었습니까?

해결책 2

새로운 솔루션에 만족합니다 ...

나는 Scheduletrigger와 Nightly Build (전체 빌드를 호출하는 것이 더 나은)와 prjecttrigger와 함께 다중 트리거를 사용하여 WriteModification/readmodification 쌍을 사용하여 수정 기록을 전파합니다. 이 질문.

다른 팁

이 작업을 과도하게 단순화 할 수도 있지만 프로젝트에서 두 트리거를 단순히 설정할 수 없습니까? 연속 빌드에 대한 하나의 간격 트리거와 야간 빌드의 ifmodificationExists 조건으로 하나의 스케줄 트리거입니다.

<triggers>
  <intervalTrigger seconds="60" name="Continuous" />
  <scheduleTrigger time="23:30" buildCondition="IfModificationExists" name="Scheduled">
      <weekDays>
        <weekDay>Monday</weekDay>
      </weekDays>
  </scheduleTrigger>
</triggers>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top