Xcodeプラグインを使用しています。私は周りを見回しましたが、ほとんどの「解決策」は機能しませんでした。
私の主な問題は、生成されたxcworkspaceに、構築しようとしているプロジェクトのスキームがないことです。プラグインはコマンドを実行します
$ /usr/bin/xcodebuild -list -workspace Project.xcworkspace
出力にはポッドのスキームのみが表示され、メインのプロジェクトスキームは表示されません。
Information about workspace "Project": Schemes: Pods Pods-AFNetworking Pods-Bolts Pods-Facebook-iOS-SDK
pod install
を使用したcocoapodsビルドステップがあります
これをXcodeプラグインの構成として配置します:ターゲット:プロジェクト、ビルド前にクリーン、構成:デバッグ、Xcodeスキーマファイル:プロジェクト、Xcodeワークスペースファイル:プロジェクト、ビルド出力ディレクトリ:$ {WORKSPACE}/build。
これは、出力されるエラーです。
Going to invoke xcodebuild:, scheme: Project, sdk: DEFAULT, workspace: Project, configuration: Debug, clean: YES, archive:NO, symRoot: DEFAULT, configurationBuildDir: /Users/ignat/.jenkins/workspace/Project/build, codeSignIdentity: DEFAULT
[Project] $ /usr/bin/xcodebuild -scheme Project -workspace Project.xcworkspace -configuration Debug clean build CONFIGURATION_BUILD_DIR=/Users/ignat/.jenkins/workspace/Project/build
Build settings from command line:
CONFIGURATION_BUILD_DIR = /Users/ignat/.jenkins/workspace/Project/build
xcodebuild: error: The workspace 'Project' does not contain a scheme named 'Project'.
FATAL: Build directory does not exist at /Users/ignat/.jenkins/workspace/Project/build. Potential configuration issue.
Build step 'Xcode' marked build as failure
Finished: FAILURE
xcodebuild -list
の出力が示すように、ワークスペースにはポッドのスキームしかありません。
Jenkinsインスタンスがプロジェクトをリポジトリからプルする場合、Project
スキームをすべての人に共有していない可能性があります。
これを修正するには、リポジトリを使用するすべてのユーザーに対してスキームを共有する必要があります。 Xcodeで、スキーム名をクリックしてスキームメニュー(左上隅)を開き、[スキームの管理...]を選択します。
[スキームの管理]ダイアログで、右側の[共有]ボックスをオンにして、Jenkinsで構築するスキームがすべてのユーザーに共有されていることを確認します。
その後、Project
スキームがJenkinsにリストされるはずです。