자동 빌드 세팅

ChungsikPark·2022년 1월 13일
0
번호 순서대로 따라하기 (링크는 참고용)

1. Bundler 설치

$ gem install bundler

rbenv

  • rbenv는 여러 버전의 루비(Ruby)를 관리하기 위한 루비 관리자
  • 로컬(local)과 글로벌(global) 등 여러 버전을 설정하여 테스트가 가능

1.1 error 발생시 해결 방법

(1번을 실행하면서 error 발생이 없으면 생략 가능)

  • brew를 이용해 rbenv 설치
$ brew update 
$ brew install rbenv ruby-build
  • rbenv 버전 및 설치 확인
$ rbenv versions
  • 현재 사용하고 있는 system 루비가 출력될 것
* system (set by /Users/username/.rbenv/version)
  • rbenv로 설치 가능한 루비 버전 리스트 보기
$ rbenv install -l
  • 원하는 루비 버전 설치 (저는 2.6.9 버전 설치)
$ rbenv install 2.6.9
  • rbenv 설치 및 확인
$ rbenv versions
  • 새로 설치된 루비가 포함되어 출력
* system
  2.6.9 (set by /Users/username/.rbenv/version)
  • rbenv의 글로벌 버전을 새로 설치한 2.6.9로 변경
rbenv global 2.6.9
  • global(글로벌) 버전 선택 변경 확인
  system
* 2.6.9 (set by /Users/username/.rbenv/version)
  • rbenv의 PATH 설정을 위해 쉘 설정 파일 열기 (.zshrc 또는 .bashrc)
$ vim ~/.zshrc
  • vim으로 파일을 열고, i 입력하여 Insert 상태가 되면, 해당 코드 입력 후에 :wq를 입력하여 저장
[[ -d ~/.rbenv  ]] && \
  export PATH=${HOME}/.rbenv/bin:${PATH} && \
  eval "$(rbenv init -)"
  • 쉘 설정파일 적용
$ source ~/.zshrc
  • 다시 1번 실행
$ gem install bundler

2. fastlane, circleci 설치

  • Bundler를 사용하여 설치 진행하기
$ cd ios
$ bundle install
$ bundle update fastlane

3. circleci 환경변수 설정

  • circleci 환경변수 설정을 위해 쉘 설정 파일 열기 (.zshrc 또는 .bashrc)
$ vim ~/.zshrc
  • vim으로 파일을 열고, i 입력하여 Insert 상태가 되면, CIRCLE_API_TOKEN 코드 입력 후에 :wq를 입력하여 저장
export CIRCLE_API_TOKEN=OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO

4. fastlane session 업데이트

fastlane run update_fastlane_session
  • 이 과정에서 권한 에러 발생시 (4.1 Access Error 발생시 해결 방법)

4.1 Access Error 발생시 해결 방법

(4번을 실행하면서 error 발생이 없으면 생략 가능)

fastlane spaceauth
  • App Store에 연결되어 있는 휴대전화번호로 인증번호를 받아 입력하여 해결

5. 버전업 후 자동 빌드하기 #1

  • .circleci/config.yml의 환경변수 변경하기 (slack 메세지에 들어갈 버전)
  • app/build.gradle의 versionCode, versionName 변경하기
  • Xcode > TARGETS > General > Version, Build 변경하기

6. 버전업 후 자동 빌드하기 #2

  • 위에 있는 4번을 실행 (cd ios 한 상태에서)
  • 해당 branch의 변경사항을 마치면 commit 후에 build branch로 push
  • build branch로 push하기 전에 7번의 내용을 참고하기

7. 참고사항

  • build 브랜치 merge 시 자동 배포가 시작되므로 merge 전에 해당 명령어를 실행
  • build 브랜치로 merge 중에 충돌 및 예기치 못한 에러가 발생할 수 있으므로, 로컬과 원격에 있는 build 브랜치를 깔끔하게 삭제 후 진행하는 것을 추천
$ git push upstream -d build
$ git branch -d build
profile
Blog by Chungsik Park

0개의 댓글