[iOS] 앱 신청 완전 자동화

앱 신청을 완전히 자동화



소스 코드를 push 하면, 나머지는 아무것도 생각하지 않아도 스토어에 릴리스 된다.
그런 환경을 만들어 보았으므로 메모
아직 제대로 움직이지 않을 것 같다 (fastlane_session이 한 달에 expire한다)

전체 흐름





↑이런 느낌

Bitrise의 부분은 따로 뭐든지 좋지만, 무료 테두리가 있었기 때문에 Bitrise로 하고 있다.
아웃 기다려. 이오 는 소위 IFTTT와 같은 서비스.
비슷한 서비스로 메르카리를 채용하고 있다.
정직 Zapier 쪽이 sample 보면서 zap 만들 수 있고 gmail의 취득 빠르고, 정규 표현 제대로 사용할 수 있으므로 Zapier 쪽이 추천입니다.

Github에 push하여 Bitrise에서 appstore connect에 업로드



여기는 간단.
Zapier 에 가입하면 튜토리얼대로 진행하면 리포지토리와 bitrise의 연계가 완료된다.
그리고는 「Deploy to iTunes Connect - Application Loader」라고 하는 step를 추가해, 적절히 정보를 기입하면 업로드 된다.
주의점으로서는, build number를increment하는 것을 잊지 않고. 동일한 빌드 번호의 ipa가 업로드에 실패합니다.
build number의 설정은 「Set Xcode Project Build Number」라고 하는 Step을 사용하면 간단하게 설정할 수 있습니다.
그리고, 쓰고 있어 생각했지만 어디의 시점에서 appstore connect에 신규의 버전이 없을 가능성이 있으므로 여기는 fastlane의 deliver 사용하는 것이 좋네요.

AppStore Connect의 Completed Process를 기다립니다.



ipa를 업로드하면 애플은 자동으로 ipa의 건강 상태를 확인합니다. (나쁜 일을 하면 이 시점에서 연주된다)
여기는 대략 몇 분에서 몇 시간과 폭이 있으므로 오로지 기다립니다.
기다리면 Apple에서 App Store Connect: Version 1.0 (1) for AppName has completed processing.라는 제목의 이메일을 받게 됩니다.

Completed Processing의 메일이 도착하면 bitrise의 workflow를 발화시킨다



automate.io를 사용하여 gmail을 모니터링하고 이메일이 도착하면 bitirse의 api를 치십시오.
메일에는 build number와 version도 기재되어 있으므로, 이것들을 파스 해 bitrise의 환경 변수에 올려 둡니다.

일 t 리세. 이오

automate.io의 bot의 내용은 이런 느낌.
정규 표현 기능이 가바가바이므로, 타이틀을 스페이스로 단락지어 꺼내고 있습니다.

bitrise에서 제출



automate.io의 webhook에서 두드린 workflow에서 fastlane의 deliver를 부릅니다.
이 근처는 특히 어려운 곳은 없습니다.
제출하는 빌드의 bundle number 등은 환경 변수에 들어 있기 때문에 그것을 사용합니다.
fastlane의 asc에의 접속은 FASTLANE_SESSION을 이용하고 있습니다만, 2FA 끊은 계정으로 인증해도 좋다고 생각합니다.

완성



그리고는 bitrise의 trigger등을 조정하면서, 사용하기 쉽게 해 갑시다.

좋은 웹페이지 즐겨찾기