<Prev
이제 실제로 fastlane을 사용하여 앱을 빌드하고 빌드 된 앱을 App Distribution을 사용해 QA팀에게 배포하는 과정이다.
굉장히 지난한 과정 같지만 해당 과정만 잘 동작하면 나머지는 깃 헙 액션을 통해 트리거를 만들어 특정 상황에서 fastlane을 실행시켜주는 과정만이 남았다.
물론 현업에서 실제로 사용할 만큼의 Fastfile을 작성하고 빌드 환경에 맞춰 수정하려면 다른 사람들이 작성한 Fastfile을 찾아보며 본인에 게 맞게 작성해 줘야하겠지만 git에 많은 reference가 존재하므로 크게 어려운 작업은 아닐것이다.
프로젝트 root 디렉토리에서 다음 명령어를 입력하여 app distribution 플러그인을 설치한다
fastlane add_plugin firebase_app_distribution
이전 포스트에서 다운로드 받은 비공개 키(json 파일)을 fastlane 폴더 안으로 옮겨준다.
default_platform(:android)
platform :android do
desc "auto deploy for qa"
lane :qa do
build_android
firebase_distribution
end
desc "build android"
lane :build_android do
gradle(task: "clean assembleRelease -PisDebug=true")
end
lane :firebase_distribution do
firebase_app_distribution(
app: "이곳에 APP ID를 입력합니다.",
service_credentials_file: "./fastlane/$비공개키파일명",
groups: "app distribution에 등록된 그룹명을 입력합니다.",
debug: true
)
end
end
해당 파일에 대한 자세한 내용은 공식 문서를 통해 확인하도록 하자.
간략하게 설명하자면 각 lane을 함수정도로 생각하면 될 것 같다. shell 에서 해당 lane을 실행하면 작성한 lane을 실행한다.
위의 작성된 내용은 쉘에서 `fastlane qa`를 실행하면 그래들을 이용해 앱을 빌드하고 빌드된 앱을 플러그인을 통해 배포한다는 내용이다.
firebase_app_distribution에서 필요한 App ID는 Firebase console 내의 프로젝트 설정에서 확인할 수 있다.
service_credentials_file은 fastlane 폴더로 옮겨둔 비공개 키의 path를 넣어주면 된다.
마지막 파라미터인 debug의 값을 true로 설정하면 배포 실패 시의 로그 확인이 한결 편해진다.
buildFlavor를 사용하여 다양한 빌드 환경을 사용한다면 `build_android` lane에서 분기문을 사용해주면 관리가 간편해진다.
이제 파일을 저장하고 다음 명령어를 실행해보자
fastlane qa
빌드 및 배포가 성공적으로 됐다면 다음과 같은 화면을 확인할 수 있다.
다음 포스트는 지금까지 작성한 fastlane파일들을 github actions을 사용하여 특정 상황(pr 혹은 push)에서 자동으로 배포될 수 있게 설정하는 작업을 포스팅하도록 하겠다
<Prev
'Development > Android' 카테고리의 다른 글
Android 배포자동화(fastlane + github actions) - Part.4 (0) | 2022.04.20 |
---|---|
Clean architecture, Android Application Architecture (0) | 2022.04.06 |
Android 배포자동화(fastlane + github actions) - Part.2 (0) | 2022.04.05 |
Android 배포자동화(fastlane + github actions) - Part.1 (0) | 2022.03.30 |
[번역] CameraX 기초 예제 - Part 3 (0) | 2022.02.11 |