'Sonarcube'에 해당되는 글 1건

  1. 2015/02/04 글뻥 Sonar cube로 Unity3D의 소스를 가시화 해보자.
Sonar cube란 소스의 정량적 상태를 가시화하는 툴이다.
이러한 소스 가시화는 예전부터 꾸준히 테스트 또는 CI 등으로 나타났는데 이제서야 제대로 된 소스의 상태를 추적관리 할 수 있도록 해주는 툴이 나타났다고 생각한다.

먼저 JAVA가 설치되어 있어야 한다.
http://www.oracle.com/technetwork/java ··· 260.html에서 다운로드 받아서 설치하자. Unity3D 안드로이드 개발할때 정신적으로 피곤하지 않으려면, 최신버전보다 2~3단계 하위버전으로 x86버전으로 다운로드 받자.
설치가 완료되면, 제어판에서 시스템, 고급시스템설정, 고급탭에서 환경변수를 클릭한다.

시스템변수 부분에 새로 만들기를 클릭하여 다음과 같이 입력한다.

변수명(변수이름) : JAVA_HOME
변수값 : C:\Program Files (x86)\Java\jdk1.7.0_45
* 변수값은 설치경로에 맞게 수정.

자바설치의 마지막으로 Path라고 변수명이 되어 있는곳에 다음과 같이 추가한다.

;%JAVA_HOME%bin;

모든 이제 cmd로 Command창을 열어 java라고 명령을 내려보면 작동하는걸 확인할 수 있다.

자바가 설치되었으면 MySQL을 설치한다. 물론 다른 DB도 지원한다. (지원 DB : MySQL, Oracle, PostgreSQL, MSSQL) 
일부 MSSQL이 설치되어 있는 분들도 있겠지만, 여기서는 범용성을 따져서 MySQL을 설치하겠다.

http://dev.mysql.com/downloads/
에서 Community server를 다운로드 받아서 설치하자. 
root암호를 입력하고 나면 모든 설치과정이 완료될 것이다.

MySQL이 설치된 경로로 이동하여 다음과 같이 MySQL로 접근하자.

MySQL -u root -p패스워드

다음과 같이 SONAR DB를 생성한다.
CREATE DATABASE SONAR;


생성된 DB를 확인하려면 다음과 같이 명령을 내린다.
SHOW databases;


이제 다음의 명령을 차례대로 내려서 sonar가 사용할 계정을 생성한다.
CREATE USER 'sonar'@'localhost' IDENTIFIED BY 'sonar';
GRANT ALL PRIVILEGES ON SONAR . * TO 'sonar'@'localhost';
FLUSH PRIVILEGES;


아직 한참 남았다. Sonar cube와 Sonar runner를 다운로드 받아서 압축파일을 해제하자.
http://www.sonarqube.org/downloads/

서로 다른 어플리케이션이므로 같은 폴더에 넣지는 말자. =(
먼저 Sonarcube가 압축이 해제된 폴더에서 "conf"에 있는 "sonar.properties"파일을 열고, 

다음의 부분을 찾아서 
#----- MySQL 5.x
#sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
다음과 같이 주석을 제거하자.
#----- MySQL 5.x
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar runner가 압축해제된 폴더에 "conf"폴더에 있는 "sonar-runner.properties" 파일을 열어서 다음의 항과 같이 수정하자.
#----- MySQL
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
#----- Global database settings
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
#----- Security (when 'sonar.forceAuthentication' is set to 'true')
sonar.login=admin
sonar.password=admin

이제 Sonarcube를 실행해보자.
압축해제한 경로의 bin\window-x86-32\StartSonar.bat 을 실행하면 된다.

접근은 http://localhost:9000/ 로 가능하다.

로그인은 admin / admin으로 접근할 수 있다.

로그인후에 좌측상단의 Setting 을 눌러 "System"아래에 있는 "Update Center"를 클릭한다.
그러면, "Installed Plugins", "Available Plugins", "Plugin Updates", "System Updates" 탭으로 보여질텐데, 그중 "Available Plugins"링크를 클릭하여 다음의 플러그인을 다운받도록 하자.

C# / ReSharper / StyleCop

링크를 누를때마다 install 버튼이 활성화 되는데 꼭 눌러주자.
이 과정이 완료되면 Sonarcube를 재시작해준다.

마지막으로 소스가 있는 폴더로 이동하여 "sonar-project.properties"파일을 생성한다. 
다음과 같이 생성한 파일을 채워넣자.

# Project Identification
sonar.projectKey = Unity 
sonar.projectVersion = 1.0 
sonar.projectName = ProjectPuppy

# Info required for Sonar 
sonar.sources = .

# Comma-separated paths to directories with sources (required) 
sonar.language = cs

# ----- Default source code encoding
sonar.sourceEncoding = UTF-8


이제 Sonar runner를 소스가 있는 폴더에서 실행하는 일만 남았다.
C:\{프로젝트경로}>c:\sonar-runner-2.4\bin\sonar-runner.bat
모든 작업이 완료되면 http://localhost:9000/ 로 접근하여 소스 분석결과를 확인해보자.


2015/02/04 11:06 2015/02/04 11:06
TAG