CI サーバーについては、TeamCity と Jenkins を検討しています。
私の目標は次のとおりです。誰かがリポジトリに変更をコミットするたびに、CI サーバーはプロジェクト内のすべてのターゲットを .ipa としてビルドし、デバイスにダウンロード/インストールできるようにします。
Mac mini をビルド スレーブとして使用して、Teamcity と Jenkins を起動して実行しました。その部分はうまく機能しています。
Jenkins XCode プラグインを使用して、すべてのターゲットを .ipa としてビルドすることに成功しました。Teamcity でこんなに運が良かったことはありません。XCode プラグインでは、すべてのターゲットをビルドすることはできません。むしろ、各ビルド構成で、ビルドするターゲットを指定する必要があります。Teamcity のメーカーにアプローチしたところ、目標を達成するために、メタ ランナーと多くの複製を含む複雑な方法を教えてくれました。
プラグインに頼る代わりに、シェル スクリプトを使用して .ipa をビルドしたいと思います。しかし、私はスクリプト忍者ではないので、これを行う方法がわかりません。
スクリプトを使用して 1 つのターゲットをビルドする方法を理解することはできますが、それらすべてをビルドする方法がわかりません。プロジェクトで新しいターゲットを作成するたびに、CI サーバーに追加する必要はありません。サーバーは、プロジェクト内のすべてのターゲットを自動的にビルドできる必要があります。
...多分誰かがより良い解決策を持っていますか? どんな助けでも大歓迎です。