質問CLIで説明されているように、xcodebuildに署名するためにキーチェーンを切り替えます。実行に2つのキーチェーンを使用する必要があるという問題がありますxcodebuild
。エンタープライズとアプリストアのIDは同じと呼ばれるため、これが必要です。
提案されたソリューションを試してみると、一度に1つしか実行していない場合は、正常に機能しxcodebuild
ます。しかし、私は複数のビルドを並行して実行しているビルドサーバー(hudsonまたはjenkins)を使用しています。各ビルドジョブは、エンタープライズバージョンとアプリストアバージョンのアプリをビルドする必要があるため、異なるキーチェーンを使用する必要があります。提案どおりにキーチェーンリストを変更すると、これは常に現在のユーザーの実行中のすべてのプロセスに影響します。したがって、異なるプロジェクトの並列ビルドが影響を受け、基本的に失敗するか、間違ったキーチェーンを使用します。
キーチェーン情報をホストしているように見える新しいセキュリティコンテキストを開くために、いくつかの回避策を試しました。
- 私
login -f ...
は、独立したセキュリティコンテキストを使用することを期待して、新しいログインセッションを開始していました。しかし、セッションでキーチェーン設定を変更すると、他のログインセッションにも影響します。 - 以前
ssh localhost ...
は新しいログインセッションを開始していましたが、残念ながら同じ結果になりました。
セキュリティコンテキストは、専用のセッションではなく、ユーザーにバインドされているようです。残念ながら、Googleを使用してこれらのセキュリティコンテキストに関する情報を見つけることができません。
異なるキーチェーンがアクティブでロック解除されている専用ユーザーのためにいくつかのプロセスを実行する方法はありますか?