2011-09-11 4 views
0

저는 팀원으로 CI를 구현하기 시작했습니다. TeamCity는 소규모 팀에게는 무료이며, 요즘에는 꽤 인기가있어 많은 옵션이 있습니다.TeamCity로 빌드 프로세스 설정

이 서버의 "일반적인"또는 최상의 사용 사례가 무엇인지 아직 결정하지 않았습니다.

빌드 작업의 대부분은 다른 도구 (MSBuild/NANT와 같은 빌드 스크립트에 포함 시키십시오)를 사용하여 수행하는 것이 더 좋으며 TC는 단위 테스트/빌드 트리거 발행에만 사용됩니다.

전체 빌드 프로세스 (파일 복사/더 복잡한 논리 기반 코드 호출 등)를 설정하기가 어렵습니다.

TC를 빌드 프로세스에 설정하는 좋은 시나리오는 무엇입니까?

우리 제품은 다양한 "플러그인"이있는 C# 기반 소프트웨어입니다.

현재 MSBuild 러너를 사용하는 3 개의 큰 .sln 파일을 작성하고 있습니다 (이 러너의 인수로 .sln 파일을 지정하기 만 함).

실제 바이너리 빌드 만 담당하지만 설치 프로그램 작성과 같이 다양한 프로젝트의 출력을 함께 결합해야하는 작업에는 충분하지 않습니다.

+1

사람들이 제안을하기 위해서는 개발 "스택"을 설명해야합니다. Microsoft 기반 (MSBuild/NANT 언급)을 사용하는 것처럼 들리지만 충분한 정보가 아닙니다. 현재 응용 프로그램을 빌드, 테스트 및 배포하는 방법은 무엇입니까? –

답변

1

내가 제공 할 수있는 최선의 답변은 팀의 도시 과정을 설명하는 것입니다. 나는 당신에게 최선을 다할 것이 무엇인지 말할 수 없습니다. 내 회사에서 팀워크를 사용하는 방법은 약 8 가지가 있기 때문에 일반적인 것을 말할 수도 없습니다.

.NET 프로젝트 (MSBuild/NAnt에 대해 언급 한 이래로 보이는 것)에서 우리는 여러 빌드 단계로 빌드했습니다. 하나는 teamcity의 솔루션 러너를 사용하여 컴파일하고, 다음은 nunit 테스트 러너를 사용하고, 마지막은 msbuild를 사용하여 파일을 복사합니다.

우리는 비슷한 패턴을 따르는 다른 .NET 빌드가 있지만 파이썬으로 작성된 사용자 정의 도구를 호출하는 몇 가지 단계를 추가합니다.

우리는 NAnt 러너 만 실행하는 몇 가지 Java 빌드가 있습니다.

귀하와 귀하의 현재 환경에 가장 적합한 방법을 선택하십시오. 잠시 동안 그걸로 생활하고 나서, 당신이 바꾸고 싶은 것을 보아라.

이미 좋은 msbuild 또는 nant 스크립트가있는 경우 teamcity를 가리키고 트리거링에 사용하십시오.

나는 teamcity의 솔루션 러너를 사용하기를 좋아합니다. 테스트 주자와 동일합니다. 그러나 MSBuild/NAnt는 파일 패턴 작업에 정말 좋습니다.

희망이 있습니다.

0

다음과 같이 우리는 인 TeamCity를 사용 1. 실행 지속적인 통합 해고 ( 2 박가 4. 정신 테스트 (배치/쉘 스크립트를 사용하여) 3 박 배포를 구축 (빨리 누군가가 코드를 커밋으로 발사) 구축

+0

이 문제에 대한 경험을 공유 할 수도 있습니다. http://stackoverflow.com/questions/7417920/teamcity-global-version-per-project-not-configuration –

0

기술적으로 TeamCity가 스크립트 또는 도구를 통해 수행하는 모든 작업을 수행 할 수 있습니다. TeamCity의 장점은 작업을 구성하기 위해 즉시 사용할 수있는 단순성입니다. TeamCity의 핵심은 명령 줄이며 업계 전반에 걸친 도구와의 통합입니다.이들은 구성 부담을 덜어주기 때문에 몇 가지 변수 나 매개 변수를 지정함으로써 성가신 스크립트가 수행하게 될 주요 작업을 자동화 할 수 있습니다. UI는 지능적으로 직관적 인 방식으로 명령 행 매개 변수를 사용합니다. TeamCity에 대한 가장 좋아하는 사용 사례는 UI의 힘에서 유래 한 역사적인 의미입니다. 마지막으로 실행 한 스크립트가 실패했거나 실패한 이유를 알아야한다고 생각하십니까? 당신은 간단한 질문에 답하기 위해 시간을들이는 역사적 기록, 유물 등을 보관해야 할 것입니다. 이제 자동화 된 작업 (빌드)의 역사적인 추세에 대해보고해야한다고 상상해보십시오. 수집하는 모든 데이터를 조사하여 간단한 질문에 답하는 사용자 정의 구현이 필요합니다. "이 빌드는 오래 걸리나요? 우리 단위 테스트의 수가 증가하고 있습니까? " 이러한 모든 데이터 포인트는 박스에서 수집되어 팀워크를 통해보고됩니다. 당신이 말할 수 없다면, 나는 그것이 아름다운 도구라고 생각합니다.

관련 문제