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

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

이 게시물은 Python 2.7 기반 서버의 CI-Test 병목(약 13분)을 분석하고 3분대로 단축한 최적화 과정을 다룹니다.


기존 문제

  • PR과 master merge 이후에 ci-test가 중복 실행되어 배포까지 시간이 늘어났습니다.
  • 테스트 자체는 2분 내외였지만 PowerShell 설치, Python 2.7 소스 빌드, 불필요한 apt upgrade 등 준비 단계가 시간을 대부분 소모했습니다.

1차 최적화(13분 → 5분)

  • master merge 후 중복 실행을 막도록 트리거를 제한하고, PowerShell 설치 및 Python 2.7 소스 빌드를 제거해 python:2.7-slim Docker 이미지로 대체했습니다.
  • apt-get 기반으로 필요한 패키지만 설치하고 apt upgrade 및 불필요 패키지를 제거했습니다.

2차 최적화(5분 → 3분)

  • 컨테이너 환경에서 캐시가 분리되는 문제를 $GITHUB_WORKSPACE로 해결하고, APT/pip 캐시 경로를 워크스페이스로 옮겼습니다.
  • pip는 다운로드 파일이 아닌 site-packages 자체를 캐싱하고, APT는 조건부 실행 및 MySQL 데이터 디렉토리를 tmpfs로 올려 I/O 병목을 줄였습니다.

향후 계획

  • 의존성을 미리 포함한 Pre-built Docker 이미지를 ECR에 올려 이미지 pull/설치 단계를 더 줄이는 방안을 제안합니다.

연관 게시글