도대체뭐가문제임

Android 프로젝트 CI/CD(Docker, Jenkins)[7] - Google Play Store에 게시 본문

개발 기타

Android 프로젝트 CI/CD(Docker, Jenkins)[7] - Google Play Store에 게시

뭐가문제임 2021. 6. 18. 18:01

이번 단계에서는 Docker 컨테이너에 설치된 Jenkins에서 앱을 빌드하고 구글 플레이스토어에 게시하도록 구성하는 방법에 대해 설명한다.

 

Jenkins에서 자동으로 게시까지 이루어지게 하기 위해선 앱이 이미 출시가 되어있는 상태여야한다.(신규앱 출시는 불가)

프로덕션, 비공개 테스트, 공개 테스트, 내부 테스트 버전의 출시가 모두 가능하다.

프로덕션 출시의 경우 출시노트를 작성해서 출시할 수 있다.

 

1. Google Play Console에서 좌측 메뉴 중 API 엑세스 메뉴로 이동해 연결할 프로젝트 선택 버튼을 클릭하고 서비스 약관에 동의한다.

2. 새 프로젝트 만들기를 선택하고 프로젝트 연결 버튼을 클릭한다.

3. Google Play Console Developer라는 이름의 프로젝트가 자동으로 생성되어 연결되었다.

    자동 게시를 위해 서비스 계정이 필요하다.

    하단 서비스 계정에서 새 서비스 계정 만들기버튼을 클릭한다.

4. Google Cloud Platform 버튼을 클릭해 해당 사이트로 이동한다.

5. 서비스 계정 만들기 버튼을 클릭한다.

6. 적절한 서비스 계정 이름을 입력한다. 서비스 계정 이메일은 자동으로 생성된다.

    필요에 따라 서비스 계정 설명까지 입력되면 가입 완료 및 계속 버튼을 클릭한다.

7. 역할 선택에서 소유자를 선택하고 계속 버튼을 클릭한다.

    서비스 계정의 역할 지정 과정을 생략하면 Google Play Console에서 서비스 계정을 인식하지 못한다.

8. 3번 과정은 생략하고 완료 버튼을 클릭해 서비스 계정이 만들어졌다면 계정의 이메일을 클릭한다.

 

9. 키 탭으로 이동해 키 추가 -> 새 키 만들기 버튼을 클릭하고 JSON 유형을 선택해 키를 생성한다.

    다운로드되는 키는 Jenkins에서 Credential을 생성하는데 사용된다.

10. 키 저장이 완료되었으면 다시 Google Play Console로 이동해서 완료 버튼을 클릭한다.

11. 서비스 계정이 추가된 것을 확인할 수 있다. 추가된 서비스 계정의 이메일을 클립보드에 복사한다.

 

12. 좌측 메뉴에 사용자 및 권한으로 이동해서 신규 사용자 초대 버튼을 클릭한다.

13. 이메일 주소에 복사해둔 이메일을 넣고 앱 권한 탭에서 애플리케이션 추가 버튼을 클릭한다.

14. 업로드 권한을 적용할 앱을 선택하고 적용 버튼을 클릭한다.

 

15. 출시와 관련된 권한 세 가지를 체크하고 적용 버튼을 클릭한다.

    

 

16. 계정 권한 탭으로 이동한다.

 

17. 스크롤을 내려 앱 출시와 관련된 세 가지 항목을 체크하고 사용자 초대 버튼을 클릭 -> 초대 보내기 버튼을 클릭한다.

      여기까지 하면 Google Play Console의 설정은 끝났다.

      Jenkins로 이동한다.

18. Jenkins 관리 -> 플러그인 관리로 이동해서 Google Play Android Publisher 플러그인을 설치한다.

 

 

 

19. 플러그인 설치가 왼료되면 Jenkins 홈으로 돌아와서 아이템 -> 구성 -> 빌드 후 조치 - 빌드 후 조치 추가 버튼을 클릭한다.

20. Upload Android AAB/APKs to Google Play를 선택한다.

21. Google Play accout 에서 Specific credentials를 선택하고 Add 버튼을 클릭한다.

22. 

Kind -> Google Service Account form private key

Project Name -> 적절한 프로젝트명 지정

JSON key 파일로는 Google Cloud Platform에서 서비스 계정을 만들면서 생성한 키를 업로드한다.

완료가 되면 Add 버튼을 클릭한다.

23. AAB or APK Files 에 업로드할 aab 혹은 apk의 경로를 입력한다.

    ex) **/build/outputs/**/*release.aab

    APK를 게시하려면 Gradle script도 assemle~

    App Bundle을 게시하려면 Gradle script도 bundle~ 이 되어야한다.

24. Release Track을 선택한다.

internal -> 내부 테스트

alpha -> 비공개 테스트

beta -> 공개 테스트

production -> 프로덕션

25. Rollout 은 단계적 출시 비율이다. 이 퍼센트에 따라 얼마나 많은 대상에게 업데이트를 노출할 지 결정할 수 있다.

      production으로 출시할 것이기 때문에 100%로 설정했다.

26. Recent changes는 출시노트이다. Add languages... 버튼을 클릭해 언어를 선택하고 출시노트를 작성한다.

27. 여기까지 완료하면 모든 설정이 끝났다. 저장 버튼을 클릭하고 빌드해본다.

Comments