Shellコマンドを使用してjenkinsパイプラインを使用してアプリケーションを構築しようとしています。以下は、アプリのビルドに使用しているコマンドです。
sh 'xcodebuild -workspace projectname.xcworkspace - allowProvisioningUpdates -scheme projectname_UAT -sdk iphoneos - configuration Debug clean build'
以下は私がコンソールを取得しているエラーです。
注:新しいビルドシステムの使用
注:ビルドの計画
2018-10-11 11:19:36.638 xcodebuild [92399:5181481] DVTPortal:サービス ''がポータル( '1100')から予期しない結果コードを検出しました
2018-10-11 11:19:36.638 xcodebuild [92399:5181481] DVTPortal:エラー:
エラードメイン= DVTPortalServiceErrorDomainコード= 1100「セッションの有効期限が切れています。ログインしてください。」 UserInfo = {payload = {type = mutable dict、count = 9、
エントリ=>
0 : responseId = <CFString 0x7ff48deef220 [0x7fff94b6daf0]>{contents = "40d9ad44-c951-49da-b3f3-b3ea434765a1"}
2 : <CFString 0x7fff94a90b58 [0x7fff94b6daf0]>{contents = "protocolVersion"} = QH65B2
3 : <CFString 0x7ff48dea3420 [0x7fff94b6daf0]>{contents = "requestUrl"} = <CFString 0x7ff48de3d9a0 [0x7fff94b6daf0]>{contents = "https://developerservices2.Apple.com/services/QH65B2/viewDeveloper.action"}
6 : <CFString 0x7ff48dec8c30 [0x7fff94b6daf0]>{contents = "userLocale"} = en_US
8 : resultCode = <CFNumber 0x44c37 [0x7fff94b6daf0]>{value = +1100, type = kCFNumberSInt64Type}
9 : userString = <CFString 0x7ff48ded0cc0 [0x7fff94b6daf0]>{contents = "Your session has expired. Please log in."}
10 : <CFString 0x7ff48dea94d0 [0x7fff94b6daf0]>{contents = "resultString"} = <CFString 0x7ff48de648e0 [0x7fff94b6daf0]>{contents = "authentication.failed"}
11 : httpCode = <CFNumber 0xc837 [0x7fff94b6daf0]>{value = +200, type = kCFNumberSInt64Type}
12 : <CFString 0x7ff48de340f0 [0x7fff94b6daf0]>{contents = "creationTimestamp"} = <CFString 0x7ff48de9a7d0 [0x7fff94b6daf0]>{contents = "2018-10-11T10:19:36Z"}
}
ローカルのxcodeとjenkinsがインストールされているマシンのxcode設定から開発者アカウントを削除してみました。再度追加しました。また、すでにログインしているセッションを両方の場所(ローカルキーチェーン、リモートキーチェーン)のキーチェーンアプリから削除しましたが、何の助けにもならないようです。私はXcode10、Mac OS Mojaveを使用しています。何が問題なのか、どんな助けにも感謝します。ありがとうございました。
これは、sshでスレーブを実行しているJenkinsの問題の修正に役立ちました。
この問題が1つのJenkinsビルドスレーブでも発生しました(iOSおよびAndroid用の)1つの特定のアプリのビルド専用です。 MacはMojaveとXcode 10.1上にありました
Macにログオンし、Jenkinsによって作成されたアーカイブを、xcodebuildではなくXcode UIを使用してエクスポートする修正appeared。それを行った後、次のジェンキンスは問題なく通過しました。私はジェンキンスの仕事や奴隷に対して他に何もしなかったために現れたと言います、そしてそれはその前に一貫して失敗していました。奇妙に見えますが、そこにあります。
この特定の問題は、他のアプリをビルドするビルドスレーブでは発生しませんでしたが、Xcode 10.1を使用している場合、これらの他のスレーブはHigh Sierraにありました。 Apple merged Apple Developer and App Store Connect)以来、すべてのiOSビルドで他の奇妙な動作がありました。
私は数週間同様の問題を抱えていました。 Xcode 10に更新すると、Jenkinsが行ったビルドのすべての側面が成功しますが、エラーが発生してビルドが失敗します。 Xcodeでの直接の構築、署名などは問題ありませんでした。
私の場合の解決策はXcode 10.1アップデートでした。リストしたエラーはJenkinsの出力に残っています。ただし、Jenkinsがビルドに失敗することはなくなりました。
悲しいことに、私は実際に失敗の原因がわからないので、それ以上の洞察はありません。
私の場合、このエラーが発生した理由は、自分のマシンでチームを手動で変更し、誤ってリモートに変更をプッシュしたため、Jenkinsビルドが失敗しました。多くのこと、私はそれを知ったCODE_SIGN_IDENTITY
内に提出project.pbxproj
ファイルはCODE_SIGN_IDENTITY = "iPhone Distribution";
以外の="Apple Development"
それが役に立てば幸い。