Travis CI+Carthage에서 prebuilt framework가 다운로드되지 않는 경우의 조치

Travis CI에서 Carthage를 실행할 때 다음과 같은 오류가 발생하여 prebuilt frameworks가 다운로드되지 않는 경우의 해결책입니다.
*** Skipped downloading RxSwift.framework binary due to the error:
        "Maximum number of login attempts exceeded. Please try again later."

분명히이 오류는 동일한 IP의 Travis CI 컨테이너가 모두의 프로젝트에서 공유되기 때문에 GitHub의 rate limit에 걸렸기 때문에 발생한 것 같습니다.
다음과 같이 GitHub API의 액세스 토큰을 지정해 주면 피할 수 있습니다.

(사전 준비) travis 명령 설치



travis 명령 gem을 설치합니다.
sudo gem install travis --no-document

액세스 토큰 만들기



htps : // 기주 b. 코 m / 세팅 gs / 토켄 s에 액세스하여 Travis CI에 대한 액세스 토큰을 만듭니다.

(1) Generate new token 버튼을 누릅니다.
(2) Token description에 「Travis」라고 입력해(※별로 뭐든지 좋지만, 나중에 자신이 알기 쉬운 이름으로) 작성합니다. 아래에 있는 범위의 체크박스는 모두 비어 있습니다.


(3) 생성 된 토큰은 복사됩니다.


.travis.yml에 대한 액세스 토큰 지정



travis 명령을 사용하여 이전에 복사한 액세스 토큰을 (암호화하여) GITHUB_ACCESS_TOKEN 환경 변수로 설정하도록 .travis.yml 파일을 다시 씁니다.
( <YOUR ACCESS TOKEN> 부분에 복사 된 토큰을 지정하십시오)
travis encrypt GITHUB_ACCESS_TOKEN=<YOUR ACCESS TOKEN> --add

.travis.yml에 다음과 같은 설명이 추가되어야합니다.
env:
  global:
    secure: fDs1oSS...(以下略)

※ 만약, travis encrypt에 실패해, uninitialized constant GH::Error 라고 하는 에러가 나왔을 경우는(내가 그랬습니다만), 다음과 같이 backports를 최신으로 하는 것으로 회피할 수 있는 것 같습니다. ( 참고 )
sudo gem update backports

참고로 한 사이트



htps : // 기주 b. 코 m / t 라 ゔ ぃ s - / t 라 ぃ s - / issue s / 4195
htps : // 기주 b. 코 m / 카 r 테이게 / 카 r 테이게 / 푸 l / 605

htps : // 기 st. 기주 b. 이 m /와 p 해만 / 25241에 48 아 1b4f91에 c6d4
htps : // 기주 b. 이 m/t등ㄔぃs-시/t등ゔぃs. rb

좋은 웹페이지 즐겨찾기