LoginSignup
15

More than 5 years have passed since last update.

CocoaPodsのライブラリをTravis CI上のXcode7.2でテストするときにハマった

Posted at

pod lib create で作成したCocoaPodsライブラリのテンプレートに付いている.travis.ymlの初期設定(下記)ではテストがうまく動かない(RxTwiftはライブラリ名)。

language: objective-c
script:
- set -o pipefail && xcodebuild test -workspace Example/RxTwift.xcworkspace -scheme RxTwift-Example -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty
- pod lib lint

ここにosx_image: xcode7.2を追加すると、Xcode 7.2で実行するようになる。

language: objective-c
osx_image: xcode7.2
script:
- set -o pipefail && xcodebuild test -workspace Example/RxTwift.xcworkspace -scheme RxTwift-Example -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty
- pod lib lint

以前までは、これで動いた。
が、今回はこんなエラーが出てコケるようになってしまった。

Build settings from command line:
    ONLY_ACTIVE_ARCH = NO
    SDKROOT = iphonesimulator9.2

xcodebuild: error: Failed to build workspace RxTwift with scheme RxTwift-Example.
        Reason: A build only device cannot be used to run this target.

7.2のxcodebuildからsdkオプションが変わったらしく、destinationオプションを使うようにしたら動いた。

-sdk iphonesimulator
↓
-destination 'platform=iOS Simulator,name=iPhone 5s'

全体はこう。

language: objective-c
osx_image: xcode7.2
script:
- set -o pipefail && xcodebuild test -workspace Example/RxTwift.xcworkspace -scheme RxTwift-Example -destination 'platform=iOS Simulator,name=iPhone 5s' ONLY_ACTIVE_ARCH=NO | xcpretty
- pod lib lint

nameiPhone 5sを直接指定しているのがキモいけども動くからしばらく許容しようと思う...

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15