Invisible Safety,

Proven by Intelligence

보이지 않는 안전을 인텔리전스로 증명하다.

기술 노트
IT 산업의 변화를 이끄는 MDS인텔리전스의
기술 인사이트를 만나보세요.
시스템 소프트웨어 개발
[CodeSonar] Jenkis 연동 방법 (1)
2026년 03월 09일


이번 포스팅에서는 최근 다양한 고객사에서 CI 도구와 CodeSonar 연동에 대한 문의가 증가하고 있어 연동 방법에 대해 안내드리고자 합니다.



먼저, CI/CD에 대해서 간단하게 소개 드리면 CI/CD(Continuous Integration/Continuous Deployment)는 지속적인 통합, 지속적인 배포를 의미하며, 소프트웨어 개발 라이프사이클을 간소화하고 가속화할 수 있어 현대 소프트웨어 개발에 필수적인 요소로 자리 잡았습니다.


 

CI(지속적인 통합)은 개발자를 위한 자동화 프로세스라고 볼 수 있으며, 코드 변경 사항을 정기적으로 빌드 및 테스트하여 공유 리포지토리에 통합하는 것을 의미합니다.


 

이러한 CI 환경을 구축했을 시, 얻을 수 있는 이점은 잦은 빌드와 테스트를 통해 결함을 이른 시기에 발견할 수 있고 해당 이슈를 빠르게 개선하여 효율적인 개발을 진행할 수 있습니다.



따라서 본 블로그에서는 CI 도구 Jenkins와 정적분석 도구인 CodeSonar를 연동하여 정적분석 자동화 환경을 구축해 보도록 하겠습니다.



"

Jenkins Free-Style 방식을 활용한 CodeSonar 연동 방법

"



Jenkins Free-Style 방식에서는 build step만 추가하여 간단하게 CodeSonar 분석 자동화 환경을 구축할 수 있습니다.


 

먼저, Add build step에서 Execute Windows batch command를 선택하여 분석 명령어를 추가해 줍니다.


 


1. CodeSonar Launch Daemon 활성화


Launch Daemon 이란 서버 또는 빌드 프로세스 지시에 따라 CodeSonar 분석 작업을 시작하는 프로세스입니다.



분석 명령어를 작성하기 전, 아래의 command를 실행하여 프로세스를 활성화시켜 줍니다.


-------------------------------------------------------------------------------------------------------------------------------------------

"CodeSonar 설치경로\codesonar\bin"codesonar install-launchd 서버IP:서버Port

_

 CodeSonar 설치경로 : CodeSonar가 설치된 경로

서버IP : CodeSonar 서버 IP

서버Port : CodeSonar 서버 Port

-------------------------------------------------------------------------------------------------------------------------------------------


Ex) "C:\Program Files\CodeSecure\CodeSonar8.1\codesonar\bin\"codesonar install-launchd 127.0.0.1:7340



2. CodeSonar 분석 명령어 실행


다음 Build Step에 아래의 CodeSonar 분석 명령어를 기재하여 빌드 및 분석을 진행할 수 있습니다.



-------------------------------------------------------------------------------------------------------------------------------------------

"CodeSonar 설치경로\codesonar\bin"codesonar analyze ProjectName -foreground -clean 서버IP:서버Port build명령어


CodeSonar 설치경로 : CodeSonar가 설치된 경로

ProjectName : CodeSonar 분석 결과 페이지에 표시될 프로젝트 이름

서버IP : CodeSonar 서버 IP

서버Port : CodeSonar 서버 Port

build 명령어 : build 명령어 혹은 build 스크립트 실행

-------------------------------------------------------------------------------------------------------------------------------------------


Ex) "C:\Program Files\CodeSecure\CodeSonar8.1\codesonar\bin\"codesonar analyze Jenkins_Demo -foreground -clean 127.0.0.1:7340 g++ -v -o demo demo.cpp second.cpp





 3. 분석 결과 확인


Jenkins 콘솔 로그에서 아래와 같이 Finished: SUCCESS 문구가 확인되었다면, CodeSonar 분석 결과 웹페이지를 통해 분석 결과를 확인할 수 있습니다.



<Jenkins 콘솔 로그>


 



<Jenkins에서 실행한 CodeSonar 분석 결과>