2014-10-21 3 views
0

TFS 2013 업데이트 3을 실행중인 회사에서 여러 팀 프로젝트 컬렉션, 빌드 컨트롤러 및 빌드 에이전트와 공유 빌드 인프라를 사용하고 있습니다.Team Foundation Server 빌드 컨트롤러 사용 제한

이제 프로젝트에서 성능 및 특정 구성 옵션을 위해 전용 빌드 시스템을 요청했습니다.

TFS에서 빌드 컨트롤러를 팀 프로젝트에 연결하고 다른 팀 프로젝트에서이 특정 빌드 컨트롤러를 사용하지 못하게 할 방법이 있습니까?

답변

2

으로 JustTFS 태그를 제안 이름 필터에서 자신의 이름을 지정하여 에이전트를 필터링 할 수 있습니다 것은 이동 할 수있는 한 가지 방법입니다. 내가 발견 한 문제는 기본적으로 빌드 정의가 태그에 관계없이 모든 에이전트에서 실행되도록 설정된다는 것입니다. 따라서 ProjectX로 에이전트에 태그를 지정하고 ProjectX의 모든 빌드를 해당 태그가있는 에이전트 만 사용하도록 설정할 수 있습니다. ProjectA의 빌드는 기본값을 사용하는 경우에도 ProjectX 에이전트를 사용할 수 있습니다.

저는 (지금까지 태그 방식을 사용 했었던) 요즘하는 일보다 각 팀 프로젝트 용 컨트롤러를 만드는 것이 더 좋습니다. ProjectX 빌드 정의는 ProjectX 컨트롤러를 사용하도록 설정됩니다. 그리고 ProjectA 빌드 정의는 ProjectA 컨트롤러 (또는 일부 공통 컨트롤러)를 사용하도록 설정되었으므로 ProjectA 빌드는 ProjectX 빌드 서버에서 실행되지 않습니다.

+0

그게 좋은 생각입니다. 모든 빌드 정의에 정의 된 태그가 있는지 확인하는 간단한 앱을 만드는 것은 어렵지 않습니다. –

+0

그 것을 잊어 버렸습니다! 서두르다. 당신은 또한 큰 dev 팀과 함께 여러 개의 게이트 된 빌드를 실행해야하는 경우 비슷한 것을 할 수 있습니다 –

1

빌드 컨트롤러는 팀 프로젝트 컬렉션에 묶여 있으므로 특정 프로젝트를 독점적으로 지정할 수는 없습니다.

할 수있는 작업은 태그를 사용하고 태그 (ProjectA)를 사용하여 특정 빌드 서버 (에이전트)에 태그를 지정하는 것입니다. 그런 다음 해당 태그가있는 빌드 서버에서만 실행되도록 빌드 정의 내에서 해당 태그를 지정할 수 있습니다.

이 예에서는 기존 코드 VS2008 빌드 컨트롤러 태그를 보여줍니다. 당신은 또한

Tag a build controller

+0

고마워요! 이제는 태그 사용에 관해서는 컨트롤러 X에서만 프로젝트를 빌드하는 데 확실히 사용할 수 있습니다. 빌드 컨트롤러에 '태그 지정'할 수 없기 때문에 특정 프로젝트에서만 사용할 수 있다는 것이 부끄럽습니다. . –