xyk blog

最近は iOS 開発の記事が多めです。

CircleCI で SSH fingerprint が原因で xcodebuild エラー

CircleCI で iOS アプリをxcode: "12.0.0"でビルド中に以下のエラーが出た。
SSH fingerprint が原因でパッケージの依存関係の解決に失敗している。

xcodebuild: error: Could not resolve package dependencies:
  The server SSH fingerprint failed to verify.

discuss.bitrise.io

こちらによるとXcode11からの既知の問題らしい。

またCircleCIのサポートページに解決方法が書いてあった。

support.circleci.com

こちらを参考に config.yml の checkout の後に以下コマンドを追加したところエラーはでなくなった。

- run: sudo defaults write com.apple.dt.Xcode IDEPackageSupportUseBuiltinSCM YES
- run: rm ~/.ssh/id_rsa || true
- run: for ip in $(dig @8.8.8.8 bitbucket.org +short); do ssh-keyscan bitbucket.org,$ip; ssh-keyscan $ip; done 2>/dev/null >> ~/.ssh/known_hosts || true 
- run: for ip in $(dig @8.8.8.8 github.com +short); do ssh-keyscan github.com,$ip; ssh-keyscan $ip; done 2>/dev/null >> ~/.ssh/known_hosts || true