Skip to content

SDK Build Deploy

배포 자동화 구축 목적#

혼자서 많은 작업을 하다보니 배포시간으로 낭비되는 시간을 줄이기 위해 자동화를 선택했습니다.

나에게 주어진 역할#

  • Android SDK

  • iOS SDK

  • Unity SDK

  • 유니티 Android 데모앱

  • 유니티 iOS 데모앱

  • SDK Guide Docs 구축 및 관리

젠킨스 구축#

SDK 배포와 SDK 테스트용 데모앱 배포를 위해 FastlaneJenkins 를 사용했습니다.

  • 젠킨스 설치

  • 블루오션 플러그인 설치

  • 유니티 플러그인 설치

iOS SDK 빌드#

iOS SDK 경우에는 배포사이클이 길다보니 Pipeline 을 사용하는게 직관적이고 관리하기 용이할 것 같아서 스크립트로 관리했습니다.

그리고 나중에 혹시 병렬로 처리했을때 확인이 어려울 수 있으니 Blue Ocean 을 설치하여 빌드 과정을 시각화했습니다.

  • pod install

  • fastlane build

  • Deploy

유니티 Android 빌드#

네이티브 SDK 배포 횟수만큼이나 유니티 빌드도 굉장히 많이 하기 때문에 구성하게 되었습니다.

프로젝트가 유니티 SDK 이다보니 주로 유니티 데모앱을 통해서 기능 테스트가 이루어지는데 아주 빈도수가 높습니다.

또한 apk 를 빌드후 테스트폰에 설치하는 행위도 고려하여 APK 다운로드페이지를 구축했습니다.

  • 젠킨스내 유니티 플러그인 설치 및 설정

  • 유니티 cli 실행시 파라미터 설정

  • shell 스크립트 작성

  • apk 업로드