2017-11-08 13 views
0

VSTS (호스트 된 TFS)에서 MSBuild를 사용하는 빌드 정의가 있습니다. 내가 정말로 원하는 것은 어떤 규칙 위반 탐지에 주석을 달도록 요구하는 것입니다. 그러나 나는 분석기를 전혀 작동시키지 못합니다. 나는 지금까지 해왔다.VSTS 프로젝트 빌드에서 코드 분석기 실행

  1. 모든 *.ruleset 파일 자체에 사용할 수없는
  2. 출력 규칙 위반을 실행 Visual Studio에서 "코드 분석"고 검증하지 구축 얻는 프로젝트 중 하나에
  3. 설치된 Microsoft.CodeAnalysis.FxCopAnalyzers -hosted 빌드 에이전트는 MSBuild가 설치된 경우에만 사용할 수 있습니다 (본격적인 Visual Studio 없음). 1 번과 같은 프로젝트에서 사용자 정의 규칙 세트를 사용했습니다.
  4. VS2017이 설치된 호스팅 된 빌드 에이전트에서 프로젝트를 빌드했지만 사용할 수도 없습니다.

위의 내용을 모두 포함하면 VSTS의 빌드 로그/빌드 개요에는 규칙 위반이 나열되지 않습니다. 코드 분석을 자동으로 실행해야하며 결과는 빌드 개요 페이지 (예 : https://MYSITE.visualstudio.com/MYPROJECT/_build/index?buildId=XXX&_a=summary&tab=details)에 표시되어야합니다.

답변

2

코드 분석 설정은 구성 및 플랫폼을 기반으로하므로 빌드시 코드 분석이 가능한 동일한 구성 및 플랫폼으로 프로젝트를 빌드해야합니다.

enter image description here

enter image description here

또한 은 MSBuild 인수에의 MSBuild를 작업을 지정할 수 있습니다 :

/p:RunCodeAnalysis=true;CodeAnalysisRuleSet=..\RuleSets\MyMixedRecommendedRules.ruleset 
+0

감사합니다! 지금 해보려고. 일반적으로 Visual Studio와 함께 설치되는 내장 규칙 집합을 참조하는 방법에 대한 제안이 있습니까? 내 솔루션과 함께 묶을 수 있지만 기본 설정인지는 알 수 없습니까? – bouke

+0

기본 폴더 (예 : C : \ Program Files (Microsoft) Visual Studio 14.0 \ Team Tools \ 정적 분석 도구 \ 규칙 세트)에 기존 규칙 세트 이름이있는 경우 규칙 세트 이름을 지정하십시오.'/ p : RunCodeAnalysis = true ; CodeAnalysisRuleSet = AllRules.ruleset' –

+0

그렇지 않으면 소스 제어에 추가하고 에이전트를 빌드하도록 매핑 할 수 있습니다. 공유 폴더는 빌드 에이전트 시스템에서 액세스 할 수 있으면 확인됩니다. –