이번 포스팅은 “GitLab과 Fastlane으로 iOS 앱 빌드 및 배포 자동화하기” 시리즈의 두 번째 글로, GitLab CI/CD 파이프라인을 구성하기 전에, Fastlane으로 Lint, Test, TestFlight 배포 등 각 단계별로 Lane을 정의하는 방법에 대해 알아보겠습니다.
이번 글에서는 Fastlane을 설치하고 기본 설정을 한 후, 필요한 환경 변수를 추가하고 각 단계별 Lane을 정의하는 내용을 다룹니다. 또한 match
방식으로 코드 사이닝 하는 방법도 설명합니다.
Fastlane 소개
Fastlane은 Android 및 iOS 배포를 단순화하는 것을 목표로 하는 오픈 소스 플랫폼입니다. Fastlane을 사용하면 스크린샷 생성, 코드사이닝, 빌드 번호 올리기, 애플리케이션 릴리스와 같은 개발 및 릴리스 워크플로의 모든 지루한 작업을 자동화할 수 있습니다.
Fastlane 설치
Fastlane은 여러 가지 방법으로 설치할 수 있으나, Bundler와 Gemfile을 사용하여 설치하는 것이 좋습니다.
앱을 빌드하고 업로드하는 데 문제가 발생하지 않도록, 로케일(Locale) 관련 환경변수를 추가합니다.
Terminal 또는 iTerm을 열고, ~/.bashrc
, ~/.bash_profile
, ~/.profile
또는 ~/.zshrc
에 아래 환경 변수를 추가합니다.
export LC_ALL=ko_KR.UTF-8
export LANG=ko_KR.UTF-8
아래 명령을 실행하여 적용합니다.
source ~/.zshrc
Xcode 프로젝트 디렉토리로 이동하여 Gemfile
파일을 생성하고 아래 내용을 작성합니다.
source "https://rubygems.org"
gem "fastlane"
아래 명령을 실행하면 ./vendor/bundle
경로에 fastlane과 필요한 Ruby gem(라이브러리)이 설치되고, 버전 컨트롤을 위한 ./Gemfile.lock
이 생성됩니다.
bundle install --path vendor/bundle
fastlane 버전을 확인합니다.
$ fastlane --version
fastlane installation at path:
/Library/Ruby/Gems/2.6.0/gems/fastlane-2.206.2/bin/fastlane
-----------------------------
[✔] 🚀
fastlane 2.206.2