본문 바로가기
IOS App Programming/트러블 슈팅

[iOS / Fastlane ] Fastlane을 통해 설정 및 CD 환경 구축 시 마주쳤던 에러 모음

by B_Tori 2024. 7. 23.

Ruby 버전 문제

원인

  • brew로 fastlane을 설치 -> 자동적으로 맞는 Ruby 버전을 같이 설치해 줌? 따라서 따로 설정할 것이 없음.이라고 나와있어 brew로 설치
  • 기본으로 맥이 가지고 있는 ruby 버전이 있어 해당 버전이 global 로 사용되어 brew로 함께 설치된 ruby 버전이 사용되지 않아 호환성 문제 발생해결과정
  1. brew로 설치된 ruby 버전 확인 : brew list ruby
  2. System ruby 버전 확인
    which ruby
    ruby -v
  3. 만약 시스템 루비의 버전이 더 낮을 경우 (호환성 문제의 원인이 될 수 있음)
  4. brew로 설치한 ruby를 기본경로로 설정하기

echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> ~/.zshrc

source ~/.zshrc

다시 루비버전을 확인하면 변경된 걸 확인할 수 있음

서명 관리 문제

  • match 기능을 통해 해결하기로 결정
  • 계속해서 알 수 없는 서명 오류 발생 -> 키체인 관리에서 불필요한 오래된 키체인 인증서들 모두 삭제 후 재시도 (성공) 그 외 서명 오류
  • 원인(추측) : 이전 연습 프로젝트에서의 인증서와의 충돌
  • 인증서와 프로비저닝 프로파일 모두 삭제 후 새 인증서와 프로파일 생성
    fastlane match nuke distribution //기존의 배포용 인증서와 프로비저닝 프로파일을 모두 삭제 fastlane match adhoc // adhoc 배포를 위한 인증서 생성

provisioningProfiles 찾지 못하는 문제

  • 직접적으로 export 옵션에 프로비저닝 프로파일 명시
  export_options: {
    provisioningProfiles: {
      "원래 번들 아이디" => "match로 생성된 프로파일 번들아이디"
    }
  }

서버오류 500 발생

ipa 생성까지 완료했으나 해당 경로에서 ipa 파일을 찾지 못해 업로드 못하는 오류

ipa 파일 경로를 전체 경로로 지정

ex. 이전 경로

firebase\_app\_distribution(


  app: ENV['FIREBASE_APP_ID'],

  ipa_path: "~/Desktop/Log/#{ipa_file_name}",

  firebase_cli_token: ENV['FIREBASE_TOKEN'],

  groups: "test"

)

ex. 수정 경로

firebase_app_distribution(

  app: ENV['FIREBASE_APP_ID'],

  ipa_path: "/Users/bang-yubin/Desktop/Log/#{ipa_file_name}",

  firebase_cli_token: ENV['FIREBASE_TOKEN'],

  groups: "test"

)

댓글