목록 보기
Python 2.7 서버의 CI Test 개선 - 13분에서 3분으로
데브옵스

Python 2.7 서버의 CI Test 개선 - 13분에서 3분으로

버즈빌
버즈빌
2025년 12월 19일

두줄요약

Python 2.7 서버의 CI-Test 병목을 줄이기 위해 중복 실행과 불필요한 설치 단계를 제거했습니다. 캐싱과 tmpfs, 슬림 이미지 적용으로 13분이던 시간을 3분까지 단축했습니다.

문제 상황

  • Python 2.7 서버의 CI-Test가 평균 13분 수준으로 전체 배포 속도의 병목
  • PR 단계와 master merge 이후에 동일한 테스트가 중복 실행돼 시간 낭비 발생
  • 불필요한 패키지 설치, 소스 빌드, 과도한 시스템 패키지 처리로 테스트 외 작업 비중이 큼

해결 방법

  • 중복 실행 트리거를 제한해 master merge 이후의 불필요한 CI-Test 제거
  • PowerShell 설치, Python 2.7 소스 빌드, 불필요한 apt upgrade와 패키지 설치 제거
  • 캐시 경로를 $GITHUB_WORKSPACE로 옮기고 설치된 site-packages 자체를 캐싱하도록 전환

성능/운영 포인트

  • python2.7-slim 이미지로 바이너리 빌드 시간을 대폭 단축
  • MySQL 테스트에 tmpfs를 적용해 디스크 I/O 병목 완화
  • 사전 빌드된 CI 전용 Docker 이미지로 추가 단축 가능성 확보

다음 읽기

#CI/CD 주제를 다룬 다른 회사 글

채널톡 메인 백엔드 서버 CI 개선기

채널톡 메인 백엔드 서버의 CI 병목을 단계적으로 분해해 개선한 과정을 정리했습니다. 공유 상태 제거, prepare 분리, 동적 큐와 캐시로 실행 시간을 크게 줄였습니다.

채널톡
채널톡
데브옵스

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...