Travis CI で Swift Package Manager を試す 🚀

  • 5
    Like
  • 0
    Comment
More than 1 year has passed since last update.

Travis CI で Swift Package Manager を試す方法を共有します。

ただし Swift 3.0 正式リリースまでに役に立たなくなるかもしれません。
⚠️今のうちに試したい方向けです。

スクリーンショット 2016-03-26 17.53.55.png

前提

  • あくまで Travis CI で $ swift build が使えることを確認するのが目的です。
    • Swift 2.2 サポートのライブラリは $ swift build できません。
    • そのため $ swift build --fetch のみ実行しています。
    • $ swift test は実行していません。
  • 3月24日付の Development Snapshots を使用しています。
    • swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a
  • これは 最低限 の設定です。ご自身の環境に応じてほかの設定を追加してください。

設定内容

.travis.yml
language: objective-c
osx_image: xcode7.3
script:
  - swift build --fetch
before_install:
  - export SWIFT_VERSION=swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a
  - curl -O https://swift.org/builds/development/xcode/${SWIFT_VERSION}/${SWIFT_VERSION}-osx.pkg
  - sudo installer -pkg ${SWIFT_VERSION}-osx.pkg -target /
  - export TOOLCHAINS=swift

変更版

(2016-04-08 追記)

Travis CI のフォーマットに従えば env: で環境変数を設定できますね。
(ついでに変数名を TOOLCHAIN_VERSION に変更したのがまぎらわしいですが 🙏)

.travis.yml
 language: objective-c
 osx_image: xcode7.3
+env:
+  - TOOLCHAINS=swift
 script:
   - swift build --fetch
 before_install:
-  - export SWIFT_VERSION=swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a
-  - curl -O https://swift.org/builds/development/xcode/${SWIFT_VERSION}/${SWIFT_VERSION}-osx.pkg
-  - sudo installer -pkg ${SWIFT_VERSION}-osx.pkg -target /
-  - export TOOLCHAINS=swift
+  - TOOLCHAIN_VERSION=swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a
+  - curl -O https://swift.org/builds/development/xcode/${TOOLCHAIN_VERSION}/${TOOLCHAIN_VERSION}-osx.pkg
+  - sudo installer -pkg ${TOOLCHAIN_VERSION}-osx.pkg -target /

[https://docs.travis-ci.com/user/environment-variables/#Defining-Variables-in-.travis.yml:title]

結果

The command "swift build --fetch" exited with 0.
Done. Your build exited with 0.

参考

try! Swift
JP Simard (@simjp) さん『実践的クロスプラットフォーム Swift』
https://speakerdeck.com/jpsim/practical-cross-platform-swift?slide=36

補足

https://github.com/apple/swift-package-manager/blob/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a/README.md

Xcode 7.3 では次のとおり設定します。

  • Xcode 7.3
.travis.yml
export TOOLCHAINS=swift
  • Xcode 7.2
.travis.yml
export PATH=/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a.xctoolchain/usr/bin:"${PATH}"

おまけ

Apple の方がメーリングリストに次のとおり送っています。(2016年1月)

https://lists.swift.org/pipermail/swift-build-dev/Week-of-Mon-20160111/000233.html

We are hoping that people will adopt SwiftPM.


Alternatively, call it swift build

Swift.org のコミュニティ内 では SwiftPM または swift build と呼んだほうがよいでしょうね。💁