TFS 2008 (SP1)을 사용했을 때 빌드가 실행되는 이유가 포함 된 "이유"MSBuild 속성에 액세스 할 수있었습니다. 이것은 빌드가 시작하자마자 사용할 수 있었으므로 가져올 작업/대상이 없었습니다. 이제 우리는 TFS 2010 (및 워크 플로가 아닌 MSBuild/업그레이드 템플릿)을 사용하고 있으며이 속성은 더 이상 채워지지 않습니다. IBuildDetail에서 정보를 검색하는 사용자 지정 작업을 작성할 수 있지만 즉시 내 MSBuild 스크립트에서 사용할 수있는 속성이 있습니까? 빌드 이유에 따라 조건부 MSBuild 스크립트 가져 오기를 수행 할 수 있었지만이 작업/대상을 사용하여 이유를 가져와야하는 경우에는 작동하지 않습니다.TFS 2010의 "Reason"속성에 발생한 문제 빌드
2
A
답변
1
아직 MSBuild 스크립트를 사용하고 있으므로 업그레이드 템플릿을 사용하고 있다고 가정합니다. 템플리트가 현재 빌드 이유를 취하여 구성 폴더 활동을 위해 TfsBuild를 실행하여 MSBuild로 전달하도록 업그레이드 템플리트를 복제/편집 또는 수정할 수 있습니다. Visual Studio에서 편집 할 템플릿을 열고 다음을 수행하십시오.
실행시 에이전트 활동을 선택하고 변수 탭으로 이동하십시오. 빌드 이유를 저장할 새 변수를 만들고 IBuildDetail의 정보를 사용하여 기본값을 채 웁니다. 변수의 목록에 다음과 같이 뭔가를 추가
Name: currentBuildReason
Variable type: String
Scope: Run On Agent
Default: BuildDetail.Reason.ToString()
다음, 구성 폴더 활동에 대한 실행 TfsBuild 등록 정보 대화 상자를 클릭합니다. CommandLineArgument elipses를 선택하여 TFSBuild에 인수를 전달하는 대화 상자를 엽니 다.
MSBuildArguments
이제 (기존 MSBuildArguments을 통과 여전히 등) 명령 줄 인수에 현재 빌드의 이유를 추가 할 수 있습니다, 비슷한 이에 :
String.Format("/p:CurrentBuildReason={0} {1}", currentBuildReason, MSBuildArguments)
확인을 클릭 당신은 아마 하나 개의 변수가 나열 대화 상자를 닫습니다. 그러면 현재 빌드 이유가 CurrentBuildReason이라는 새 인수로 전달되며 MSBuild 스크립트에서 $ (CurrentBuildReason)로 참조 될 수 있습니다.
업그레이드 템플릿을 저장하고 체크인하십시오. 템플릿을 빌드 정의에 지정하십시오. 해당 정의에서 사용되는 MSBuild 스크립트는 위에서 설명한대로 변수를 사용할 수 있습니다.
관련 문제
- 1. TFS 2010의 자동 릴리스 빌드
- 2. VS 2012 TFS 2010의 단위 테스트 문제
- 3. TFS 2010의 빌드 정의 파일 (XAML)
- 4. TFS 2010의 "기본"빌드 로그는 어디에 있습니까?
- 5. TFS 2010의 단위 테스트 자산 빌드
- 6. TFS 2010의 빌드 프로세스에 가장 적합한 시나리오
- 7. TFS 빌드 문제
- 8. TFS 빌드 에이전트 문제?
- 9. TFS 빌드 에이전트 문제
- 10. TFS 2010의 기능 테스트
- 11. TFS 2010의 "Build"클래식 ASP
- 12. TFS 2010의 Sharepoint 제품에 대한 확장판 문제
- 13. TFS 2010의 "빌드에서 발견 됨"
- 14. TFS 2010의 공유 파일
- 15. TFS 2010의 CompilationOutput
- 16. TFS 2010의 병합 충돌
- 17. TFS 2010의 CI 트리거에서 작업 폴더 제외
- 18. TFS 2010 빌드 구성 변환 문제
- 19. App.config 파일에서 TFS 빌드 문제 (오류 3719)
- 20. TFS 2010 빌드 문제 및 종속성 해결
- 21. TFS 2010의 프로젝트 디렉터리 트리
- 22. Excel에서 TFS 2010의 항목 연결
- 23. Project Server 2010의 TFS 2010
- 24. TFS 2010의 폴더 이름 바꾸기
- 25. TFS 빌드 서버에서 VS 데이터베이스 프로젝트를 빌드 할 때의 문제
- 26. TFS 빌드 컨트롤러가 실패했습니다.
- 27. TFS 빌드 확장 기능 2010 TFS 빌드 프로세스 템플릿의 Azure
- 28. Jquery에서 발생한 문제 removeOption
- 29. TFS 2010 빌드 정의
- 30. TFS 2008 빌드 테스트