2013-09-29 3 views
4

전 커밋 분석 도구 인 sonar의 사용법이 컴파일을 실행해야한다는 이유로 인해 stackoverflow에 대한 여러 게시물을 읽었습니다사전 커밋 후크를 통해 SonarQube 분석을 실행할 수 있습니까

그러나 분석을 실행할 파일 목록을 설정하기위한 sonar.inclusions 속성이 있다는 sonarqube 설명서가 있습니다. 그래서 나는 미리 커밋 된 훅으로 변경/수정 된 파일에 대한 분석을 실행하고 너무 많은 쟁점이 추가 된 경우 커밋을 실패하는 것에 대해 생각하고있었습니다.

내가 이해 한대로 수정 된 파일과 추가 된 파일의 목록을 svnlook을 통해 가져올 수 있습니다. 소나 분석기가 콘크리트 .properties 파일 (예 : 코딩 규칙 및 순환 복잡성 및 LCOM4 메트릭 만있는 구성을 가리키는 파일)을 가리 키도록하는 기능도 있습니다.

그러나 사전 커밋 (pre-commit) 훅 스크립트에서 음파 분석 결과를 얻는 방법을 이해하지 못하고 분석 결과에 대한 링크를 제공합니다. 가능한가요? 실제 사례가 있거나 이러한 사례에 대해 적어도 원격으로 관련이있는 사례가 있습니까?

미리 감사드립니다.

답변

3

그러나 프리 컷 (pre-commit) 훅 스크립트에서 쏘 나어 분석 결과를 얻는 방법을 이해하지 못하고 분석 결과에 대한 링크를 제공하지 못합니다. 가능한가요?

프리 커밋에서 아니요. 최소한 당신의 커밋이 완료되기를 원하지 않는다면. 사전 커밋이 클라이언트에게 인 을 반환하면 커밋이 거부됩니다.

pre-commit은 요구 사항이 충족되었는지 확인하기 위해 커밋을 확인하는 데에만 사용해야합니다. 커밋 메시지가 제공되었는지 확인하고, 버그 추적기와 통합하는 경우 올바른 버그 ID가 입력되었는지 확인하십시오 내장 경로 기반 인증이 처리 할 수없는 보안 검사를 수행 할 수도 있습니다.

모든 후크 스크립트는 최대한 짧고 효율적이어야합니다. 장기 실행 사전 커밋은 특히 커미터와 그 뒤에 커밋하려고하는 다른 사람을 보류합니다.

사용 용도에 따라 커밋 후크가 작동 할 수도 있지만 (클라이언트에게 피드백을 보낼 수 없기 때문에 URL을 제공 할 수 없다는 것을 제외하고는) 더 나은 해결 방법은 통합 서버. 이 도구는 변경 사항을 저장소에서 모니터링하고 해당 커밋이 발생할 때마다 알려주는 작업을 수행합니다. 해당 시스템을 사용하여 수표를 수행하고 결과가 포함 된 전자 메일을 보냅니다.

+0

실제로 CI 프로세스에 통합하는 것이 좋습니다. 그러나 필자가 원했던 것은 코딩 규칙을 준수했기 때문에 커밋에 실패하는 시스템이었습니다.따라서 기본적으로 분석이 특정 임계 값을 초과하지 않으면 아무 것도 반환 할 필요가 없습니다. 그러나 커밋 된 코드에 3 가지 중요한 문제가있는 경우 커밋을 실패하고 커미터를 결과가있는 페이지에 연결하고 싶습니다. 나는이 스크립트들이 경량이어야한다는 것을 알고있다; 그들이이 기준을 충족시키지 못한다면 - 그래도 그런 행동을 구현하는 것이 가능한지 알고 싶다. – jiallombardo

0

이 스레드가 아직 살아 있는지 알지 못하지만 비슷한 상황에서 작동하고 응답합니다.

Issues Report plugin은 새로운 문제가보고되었는지 확인하기 위해 다음과 같이 구문 분석 될 수있는 별도의 프로세스 (예 : jenkins 작업의 일부로 셸 스크립트와 정규식을 사용하는)를 생성 할 수 있습니다. 실패를 반환합니다.

관련 문제