소프트웨어 개발의 지속적 통합(CI
)와 지속적 배포(CD)
프로세스를 자동화하는 데 널리 쓰이는 오픈 소스 자동화 서버이다.
Java로 개발된 이 도구는 버전 커트롤 시스템(SVC)과 통합해 소프트웨어 개발 프로젝트의 빌드, 테스트, 배포 작업을 자동으로 실행한다.
젠킨스는 플로그인 기반 구조를 갖추고 있어 다양한 개발, 테스팅, 배포 도구들과 쉬운 통합이 가능
유연성
: 플러그인으로 확장 가능한 구조로 다양한 도구와 통합을 지원
커뮤니티
: 오픈 소스 프로젝트로서 활발한 커뮤니티 지원과 광범위한 플러그인 생태계가 구축되어 있음
자동화
: 소프트웨어 개발 과정에서 반복적인 작업을 자동화함으로써 생산성을 향상 시킨다.
학습 곡선
: 젠킨스와 플러그인 시스템은 초기 설정과 관리에 있어 상당한 학습이 필요
리소스 요구랑
: 복잡한 프로젝트에서는 상당한 시스템 리소스를 소모할 수 있음
성능 이슈
: 대규모 프로젝트 혹은 높은 동시성 유구하는 프로젝트에서 빠른 속도의 CI/CD 파이프라인을 요구하는 환경에서는 Jenkins를 다루기 어려울 수 있음