Study/cs (computer science)

빌드(Build)/Jankins 젠킨스/CI도구 써야하는 이유

개발하는 주디씨 2023. 1. 3. 14:08

 

오늘 수정사항 서버에 반영(Deploy)해야되니까 빌드(배포하기 위한 준비과정)까지 완성시켜놔.

프로젝트를 하다보면 종종 이런 말을 듣게됩니다.
Jenkins 가 무엇인지도 잘 모르는데 무작정 사용법만 익혀
이해해야했던 시간을 되돌려 그 의미와 사용법을 알아봅니다.

 

젠킨스/Jenkins

 

Build? 빌드란

 

Jenkins를 이해하기 위해선 빌드의 개념을 이해해야 한다. 빌드는 서버에 올라갈 수 있는 형태로 만드는 것. 예를들어 SpringBoot 어플리케이션을 Maven이나 Gradle로 빌드하여 .jar이나 .war로 만드는 과정이라고 할 수 있다.  빌드 툴의 경우 Java는 Maven과 Gradle이 자리잡고 있으며 이 빌드 관리 툴을 사용하는 것은 빌드 자동화를 하기 위해 즉, 젠킨스와 함께 사용하기 위해서라고 이해해도 무방하다.

 

사용하는 이유

 

개발 중인 프로젝트에서 commit(소스변경)은 빈번하게 일어난다. 여기서 코드 변경에 따라 매번 개발자가 빌드하고 테스트를 해야 한다면 시간을 낭비하게 된다. 젠킨스를 사용하게 되면 프로젝트 표준 컴파일 환경에서 컴파일 오류를 검출하여 알려주며, 자동화 테스트를 수행하기 때문에 개발자가 개발에 집중할 수 있다.

 

또한 프로파일링 툴을 이용한 소스 변경에 따른 성능 변화를 추적하고 결합 테스트 환경에 대한 배포(Deploy)가지 하게된다. 이 밖에도 500여가지가 넘는 플러그인을 제공하고 있어 자신에게 필요한 기능을 추가하여 사용이 가능하다.

 

 

편한데 효율적이니까 사람들이 쓰지 않을 이유가 없긴하다 :)