2022.09.16 - [iOS 캐기/fastlane 캐기] - [fastlane]자 해보자! fastlane!
2022.09.16 - [iOS 캐기/fastlane 캐기] - [fastlane] 설치
[fastlane] 프로젝트 설정
2022.09.16 - [iOS 캐기/fastlane 캐기] - [fastlane] match로 배포해보기
2022.09.16 - [iOS 캐기/fastlane 캐기] - [fastlane] match git 설정
2022.10.24 - [iOS 캐기/Error 캐기] - [fastlane] sh: xcbeautify: command not found
1. fastlane을 적용할 프로젝트의 루트 디렉토리에서 터미널을 실행한다.
fastlane init
4가지의 선택지가 주어지는데 나는 4번! Manual setup으로 진행할 예정이다.
모든것을 처음부터 구축해보고싶기 때문이다 😏
설치를 완료하고 프로젝트 폴더를 보게 되면 fastlane 폴더가 생겨 있고 내부에는 Appfile과 Fastfile이 생성된 것을 확인 할 수 있다.
fastlane은 Appfile의 내용을 참조해서 환경을 셋팅하고 fastfile을 참고하여 특정 명령을 수행한다(lane)
핵심정보를 보관하여 지속적으로 입력하는 일이 없도록 사용하면 된다.
fastlane을 통해 사용하려는 기능들을 lane으로 정의할 수 있다.
먼저 소개하고 싶은 기능은,
일반적으로 Apple 개발자 포털에서 새 앱을 수동으로 등록하면 되지만
우리는 이 기존의 수동프로세스를 자동화로 해보겠다. 바로 Produce 라는 것이다.
Apple Developer Portal 과 Apple Stroe Connect 에 새로운 iOS 앱을 생성하기 도와주는 명령어
1. 터미널 명령어
2. fastfile 의 lane으로 만들어서 사용하는 법
1. 방법으로 진행해 보자
순차적으로
Your Apple ID Username : ********@gmail.com
App Identifier : atlas.fastlane.demo
App name : iLaneSample
정보를 기입해 준다.
이렇게 기분좋은 녹색의 성공 메시지를 받고 App Store Connect에 들어가면 앱이 따단! 하고 만들어져 있다.
기존에는 이렇게 앱을 만들었는데 이제는 fastlane의 produce를 적극 활용해야겠다 :)
code signing 이란 애플인증서와 프로비저닝 프로파일을 갖추는 과정인데
1.cert/sigh
2.match
2가지 방법으로 리소스 획득 저장 및 관리를 자동화 할 수 있다.
애플인증서(certificate)는 Apple의 보안체계에서 필수 적인 역할을 한다. 검증가능한 디지털 ID로 작동하기 때문이다.
개발자가 Apple 대신 앱을 실행할 수 있는 권리를 허용하는것
프로비저닝 프로파일(Provisioning Profile)은 그룹라이센스 인증과 같은 ㅁ것으로 지정된 iOS 앱을 설치하고 실행하기 위한 알려진 ios 장치세트라고 볼 수 있겠다 (디바이스가 나를 신뢰하는지를 확인하기 위한 파일 )
fastlane을 통해서 이 2가지 파일을 관리해보자 .
certificate/ Provisioning Profile을 만들고 설치하는데 사용되는 명령어
cert는 iOS 코드 서명 certicicate를 생성하고
sigh은 앱에 대한 provisioning Profile을 생성합니다.
Fastfile
lane :custom_lane do
#lane signing + build developent
sync_code_signing(type: "development")
build_app(scheme: "iLaneSample")
end
lane :custom_lane do
#lane signing + build distribution
sync_code_signing(type: "appstore")
build_app(scheme: "iLaneSample")
end
우선 이렇게 하고
Xcode에서 Organizer를 통해서 보면 이렇게 Archive 된 것을 확인 할 수 있다.
그리고 Developer Potal 사이트를 보게 되면 Provisioning Profile도 생성되어 있는 것을 확인 할 수 있다.
이렇게 한 상태에서 배포까지 후다닥 해보쟈
테스트 플라이트를 위한 lane을 만들어 보자
FastFile
lane :deploy_testflight do
# upload_to_testflight
sync_code_signing(type: "appstore",
app_identifier: "atlas.fastlane.demo",
readonly: true
)
increment_build_number # build number 자동으로 증가
build_app(scheme: "iLaneSample",
export_method: "app-store")
upload_to_testflight
end
upload_to_testflight 를 추가해서 실행해보자.
터미널을 보면 upload_to_testflight 스텝이 추가되어 실행되는걸 볼 수 있다.
* 중요한걸 잊을 뻔 했다. *
Asset catalog의 AppIcon 이미지를 추가해줘야한다.
plist 에도 추가해주자 " key: IconName , value: AppIcon "
그리고 App store connect 를 보면 잘 업로드 되어있다 . 뿌듯하다 👏
한번에 이렇게 잘 된다면 너무나 좋겠지만 실제로는 수많은 삽질을 하며 왔다 ㅠㅠ
삽질하면서 처리한 내용들은 따로 정리해 봐야겠다.
https://artieee.tistory.com/36
Appfile 전체 파일내용
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
# https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
# https://docs.fastlane.tools/plugins/available-plugins
#
# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane
default_platform(:ios)
platform :ios do
desc "Description of what the lane does"
lane :custom_lane do
#lane signing + build
sync_code_signing(type: "appstore")
build_app(scheme: "iLaneSample")
end
lane :register_app do
produce(
username: "*****@gmail.com",
app_identifier: "atlas.fastlane.demo",
app_name: iLaneSample,
team_name: "A Team"
)
end
lane :deploy_testflight do
# upload_to_testflight
sync_code_signing(type: "appstore",
app_identifier: "atlas.fastlane.demo",
readonly: true
)
increment_build_number # build number 자동으로 증가
build_app(scheme: "iLaneSample",
export_method: "app-store")
upload_to_testflight
end
end
[fastlane] slack으로 push 알림 보내기 (0) | 2022.10.04 |
---|---|
[fastlane] match로 배포해보기 (2) | 2022.09.16 |
[fastlane] 설치 (0) | 2022.09.16 |
[fastlane]자 해보자! fastlane! (0) | 2022.09.16 |
[fastlane] match git 설정 (2) | 2022.09.16 |
댓글 영역