자체 CI/CD 시스템(Jenkins 유사) 설계·적용, 테스트 자동화

신입 온보딩 프로젝트로 자체 CI/CD 시스템을 설계부터 구현까지 단독으로 수행했다. Bitbucket과 연동하여 특정 브랜치·커밋 단위로 자동 빌드가 이루어지고, 장비별 패키지 생성 후 기본 테스트가 실행되도록 구성했다. 결과는 알림으로 제공되어 개발 효율성과 품질 관리 체계를 동시에 강화할 수 있었다.

자체 CI/CD 시스템(Jenkins 유사) 설계·적용, 테스트 자동화
자료 사진 (출처: APIdog.com)

CI/CD 아키텍처 설계


처음부터 CI/CD 파이프라인 아키텍처를 설계하고 전체 구조를 정의했다. 코드 변경 → 빌드 → 패키지 생성 → 테스트 → 결과 알림까지의 흐름을 설계 문서로 작성했다. Jenkins 파이프라인과 유사한 구조를 참고했지만 사내 환경에 맞춰 불필요한 요소를 제거하고 경량화했다.

요구사항

Bitbucket 연동 및 빌드 자동화


Bitbucket 저장소와 CI/CD 서버를 연동하여 브랜치·커밋 단위로 빌드가 자동 실행되도록 했다. Webhook과 스크립트를 활용해 커밋 이벤트를 트리거로 지정했으며, 수동 빌드에 비해 빠른 피드백을 얻을 수 있게 했다. 이를 통해 코드 변경 사항이 실시간으로 검증되는 환경을 만들었다.

빌드 및 테스트 실시간으로 모니터링 할 수 있는 화면

장비별 패키지 생성 및 배포 파이프라인 구현


여러 장비에서 동일하게 실행될 수 있도록 패키지 빌드 스크립트를 작성했다. 장비별 특성을 고려해 의존성 관리와 환경 설정을 자동화했고, 빌드 산출물이 서버에 자동 보관되도록 했다. 배포 과정 역시 스크립트 기반으로 자동화하여, 수동 작업으로 인한 오류를 줄였다.

CI/CD 결과로 생성된 패키지

테스트 자동화 구성


패키지 설치 직후 기본 기능이 정상 동작하는지 확인할 수 있도록 자동 테스트를 설계했다. 핵심 모듈이 정상적으로 실행되는지 검증하는 단위 테스트와 간단한 통합 테스트를 포함시켰다. 테스트 결과는 로그와 리포트 형태로 저장되며, 실패 시 즉시 원인을 파악할 수 있도록 했다.

결과 알림 및 운영 편의성 확보


CI/CD 파이프라인의 최종 결과는 알림으로 자동 전송되도록 했다. 빌드 성공/실패 상태와 함께 로그 링크를 제공해 문제 확인 시간을 단축했다. 이를 통해 개발자가 즉시 피드백을 받고 수정할 수 있는 환경을 구축했다. 또한 운영 편의성을 위해 설정과 실행 절차를 매뉴얼로 문서화했다.