피드로 돌아가기
I built a CLI that covers the entire Google Play Developer API
Dev.toDev.to
DevOps

개발자가 Google Play Developer API 전체 204개 엔드포인트를 하나의 CLI로 통합하여 Android 배포 자동화 파이프라인을 구축했다

I built a CLI that covers the entire Google Play Developer API

Yasser's studio2026년 3월 31일5intermediate

Context

Android 앱 배포 시 Play Console에서 수동 클릭 작업이 반복되며, 기존 도구들은 Fastlane이 20개 엔드포인트만 지원하거나 Gradle 의존성 문제가 있었다. 팀 내 bash 스크립트는 작성자 이탈 시 유지보수가 불가능했다.

Technical Solution

  • @gpc-cli/cli 패키지로 204개 Google Play API v3 엔드포인트를 단순한 명령어로 매핑했다
  • 9개 병렬 오프라인 스캐너로 AAB 파일의 targetSdk compliance, 권한, 비인가 SDK 등을 Preflight 명령어로 검증했다
  • 10개 병렬 API 호출로 크래시율, ANR율, 리뷰 등 앱 건강 상태를 하나의 status 명령어로 확인했다
  • CI/CD 파이프라인 고려 설계로 TTY 감지 출력, 시맨틱 종료 코드, --dry-run 옵션을 기본 제공했다
  • 플러그인 SDK과 CI/CD 도우미 패키지로 확장성을 확보한 7개 패키지 TypeScript 모노레포로 구성했다

Impact

테스트 1,845개, 핵심 패키지 90% 이상의 라인 커버리지를 달성했다. Cold start 500ms 미만을 유지하며 macOS, Linux, Windows 크로스 플랫폼 지원한다.

Key Takeaway

Go의 바이너리 배포 방식 대신 TypeScript를 선택하여 Android 개발자에게 익숙한 npm 생태계와 독립 SDK 활용이라는 양쪽 장점을 확보했다.


Android CI/CD 파이프라인에서 GPC Preflight 명령어를 빌드 후 실행하면 Google 심사에 통과하지 못한 정책을 배포 전에 감지하여 반려 시간을 단축할 수 있다

원문 읽기