2013-08-13 2 views
0

예를 들어 커밋 메시지에 특정 텍스트를 넣을 때 빌드가 트리거되지 않도록 할 수 있습니다. 내가하고 싶은 것은 빌드를 트리거하는 커밋 메시지를 기반으로 매개 변수의 값을 변경할 수 있도록 만드는 것입니다.TeamCity에서 커밋 메시지를 사용하여 빌드 매개 변수를 변경하는 방법이 있습니까?

특히 통합 테스트를 위해 로컬 db를 새로 고칠 지 여부를 결정하기 위해 스크립트가 볼 빌드 매개 변수가 있습니다. 이것은 데이터베이스를 변경하거나 통합 테스트가 더럽고 자체적으로 정리하지 못하는 경우에 사용됩니다. DB를 새로 고쳐 안정된 상태로 만들 수 있습니다.

커밋 메시지에 특정 텍스트를 추가하여 해당 매개 변수를 변경할 수있게하고 싶습니다. (또는 덜 이상적으로는 현재 빌드 매개 변수를 읽는 스크립트에서 읽음으로써) 새로 고치기를 트리거합니다. DB. Teamcity 8을 사용하고 있습니다.

답변

0

이러한 종류의 조건부 동작을 추가하는 것은 좋지 않습니다. 빌드가 다른 작업을 시작하면 실제 상태 (빨간색/녹색)를 풀 수 있습니다 (예 :

  • 빌드가 DB를 정리하려고 시도하지만 실패합니다.
  • 다음 빌드는이 작업을 수행하려고
  • 빌드 구성 상태가 지금 대신

녹색으로 DB 정리 작업 결과가 손실됩니다, 내가 별도의 빌드 설정을 추천 할 것입니다 녹색하지 않습니다 DB 재설정을 수행하는 구성.

"DB 재설정"구성에서 "통합 테스트"에 대한 스냅 샷 종속성을 추가하고 "동일한 에이전트에서 빌드 실행"옵션을 활성화하고 특정 커밋 메시지를 수신하는 VCS 트리거를 추가하십시오.

이렇게하면 커밋 메시지에 "마법 주문"이 포함 된 경우 각 통합 빌드 후에 DB가 재설정됩니다. 그리고 당신은 항상 리셋이 성공했는지 아닌지 알게 될 것입니다.

+0

이것은 아마 궁극적으로 내가 얻을 수있는 것입니다.하지만 더 나은 테스트를하기 위해 더 많은 테스트를하고 데이터베이스 테스트에서 멀리 떨어지게되면 중간 단계가 필요하다고 생각합니다. –

+0

@Nikita Skvortsov 커밋 메시지를 변수에 저장하여 다른 용도로 사용할 수 있습니까? –

관련 문제