Help us understand the problem. What is going on with this article?

xcodebuildコマンドの-exportOptionsPlist対応(xcode9 beta向け)

More than 3 years have passed since last update.

前提

スクリーンショット 2017-09-12 17.23.26.png

xcode8までの場合

http://qiita.com/roworks/items/7ef12acabf9679561d84
こちらの記事が参考になるかと。
plistにきちんと設定を記載してやるとビルド->アーカイブができるようになります。

xcode9 betaの場合

今までは

xcodebuild -workspace ****.xcworkspace -scheme productName -configuration Config CODE_SIGN_IDENTITY='****' -archivePath "***.xcarchive" archive
xcodebuild -exportArchive -archivePath "***.xcarchive" -exportPath "****" -exportOptionsPlist ****.plist

でxcarchive作成 → ipa作成をやっていたのですが、突然エラーを吐くようになりました。調べまわっても情報がないので仕方なくxcodebuildのマニュアルを読むと、どうやら新しくplistファイルに記述すべき内容が増えたようです。
xcodebuild --helpを見てもらえれば、exportOptionsPlistで必要になるキーと値の詳細が見られますが、私の環境でhelpを開いたときの内容をまずは以下にコピーします。

Available keys for -exportOptionsPlist:

    compileBitcode : Bool

        For non-App Store exports, should Xcode re-compile the app from bitcode? Defaults to YES.

    embedOnDemandResourcesAssetPacksInBundle : Bool

        For non-App Store exports, if the app uses On Demand Resources and this is YES, asset packs are embedded in the app bundle so that the app can be tested without a server to host asset packs. Defaults to YES unless onDemandResourcesAssetPacksBaseURL is specified.

    iCloudContainerEnvironment

        For non-App Store exports, if the app is using CloudKit, this configures the "com.apple.developer.icloud-container-environment" entitlement. Available options: Development and Production. Defaults to Development.

    manifest : Dictionary

        For non-App Store exports, users can download your app over the web by opening your distribution manifest file in a web browser. To generate a distribution manifest, the value of this key should be a dictionary with three sub-keys: appURL, displayImageURL, fullSizeImageURL. The additional sub-key assetPackManifestURL is required when using on demand resources.

    method : String

        Describes how Xcode should export the archive. Available options: app-store, ad-hoc, package, enterprise, development, and developer-id. The list of options varies based on the type of archive. Defaults to development.

    onDemandResourcesAssetPacksBaseURL : String

        For non-App Store exports, if the app uses On Demand Resources and embedOnDemandResourcesAssetPacksInBundle isn't YES, this should be a base URL specifying where asset packs are going to be hosted. This configures the app to download asset packs from the specified URL.

    teamID : String

        The Developer Portal team to use for this export. Defaults to the team used to build the archive.

    thinning : String

        For non-App Store exports, should Xcode thin the package for one or more device variants? Available options: <none> (Xcode produces a non-thinned universal app), <thin-for-all-variants> (Xcode produces a universal app and all available thinned variants), or a model identifier for a specific device (e.g. "iPhone7,1"). Defaults to <none>.

    uploadBitcode : Bool

        For App Store exports, should the package include bitcode? Defaults to YES.

    uploadSymbols : Bool

        For App Store exports, should the package include symbols? Defaults to YES.

ふむふむ、さっぱりですな。
しかしどうやらinstallerSigningCertificateprovisioningProfilesとやらが新しく増えたような気がする。
読んで字の如くだろうとあたりをつけて、iPhone Distribution:**的なSigningCertificateと、プロビジョニングプロファイルのキーと文字列の組み合わせを追記するとあっさり動きました。
Jenkinsなどでビルドしたくてたまらなかったのが解消されたのでスッキリしました。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした