💻 이 글은
Xcode Version 13.3.1
,fastlane 2.206.2
를 바탕으로 작성하였습니다.
📌 참고
- fastlane 개요 및 설치 관련
🔗 [iOS] fastlane 이용한 배포 자동화 (TestFlight 편)
- Firebase App Distribution 관련
🔗 [iOS] Firebase App Distribution를 이용한 테스트 앱 배포 (1)
🔗 [iOS] Firebase App Distribution를 이용한 테스트 앱 배포 (2)
TestFlight
와 같이 Firebase App Distribution
는 흔히 사용되는 테스트용 테스트 배포 방식 중 하나입니다.
저도 팀 내 테스트용 앱 배포시에는 Firebase App Distribution
을 이용하고 있는데요, TestFlight
와 마찬가지로 Firebase App Distribution
또한 꽤나 번거로운 과정이 필요합니다.
오늘은 fastlane
을 이용하여 이러한 과정들을 한줄의 커맨드로 자동화를 하는 방법을 알아보겠습니다.
📚 관련 공식 문서
- Firebase documentation
https://firebase.google.com/docs/app-distribution/ios/distribute-fastlane- fastlane documentation
https://docs.fastlane.tools/getting-started/ios/beta-deployment/#uploading-your-app
우선, 프로젝트의 루트 폴더에서 플러그인 설치를 위한 명령어를 실행합니다.
fastlane add_plugin firebase_app_distribution
🔥 이때 fastlane 이 Gemfile 을 수정하는데, Permission denied가 날 수 있습니다. 이럴 경우
sudo
를 이용해서 설치를 진행해주세요.
Fastlane 플러그인
을 사용하려면 먼저 Firebase 인증
이 필요한데, Firebase 로그인
을 통해서 인증을 해보겠습니다.
fastlane run firebase_app_distribution_login
반환된 URL에서 Firebase 로그인을 진행해서 토큰을 생성합니다.
이제 Firebase App Distribution
을 위한 플러그인 설치와 설정이 완료되었으니, 프로젝트 폴더에서 fastlane/Fastfile
로 이동해서 새로운 lane
을 만들어줍니다!
platform :ios do
...
desc "Push a new beta build with Firebase App Distribution"
lane :firebase do
build_app(workspace: "[Target Project Name].xcworkspace", scheme: "[Target Scheme]")
firebase_app_distribution(
app: "[Firebase Console/Project 설정/일반/내 앱/앱 ID]",
firebase_cli_token: "[방금 발급받은 Refresh Token]",
groups: "[Test Group Name]"
)
end
...
end
📚 공식 문서에서
firebase_app_distribution(...)
의 더 많은 파라미터 설정을 볼 수 있습니다.
모든 설정과 lane 생성이 끝났고, 이제 이 lane 으로 배포를 해봅시다.
fastlane firebase
저는 Firebase App Distribution
의 lane
이름을 firebase
로 설정했기때문에 위의 커맨드를 실행해줍니다.
배포를 위한 과정이 시작되고, 잠시뒤 배포 성공 메시지를 확인할 수 있습니다!
오늘은 TestFlight 나 AppStore 뿐만 아니라 fastlane 에서 제공하는 Plugin 을 통해 간단하게 Firebase App Distribution 을 하는 과정을 알아보았습니다.
틀린 정보 또는 궁금한 점이 있다면 댓글 부탁드립니다! 읽어주셔서 감사합니다‼️