くりにっき

フルスタックキュアエンジニアです

Travis CIでMJITを有効にしたビルドマトリクスを作る

何番煎じか分からないけど自分用メモ

tl;dr;

.travis.yml に下記のようなものを書くだけ

matrix:
  include:
    - rvm: 2.6
      env: RUBYOPT="--jit"
    - rvm: ruby-head
      env: RUBYOPT="--jit"

実行結果

https://travis-ci.org/sue445/rubicure/builds/473290010

f:id:sue445:20181229205640p:plain

ビルドスクリプト内で RUBYOPT="--jit" bundle exec rspec とかしてもいいんですが、それだとビルドがコケた時にJIT起因の問題なのかそうじゃないのかが分かりづらくなるのでこっちを推奨です。

あと、

rvm:
  - 2.6
  - ruby-head

を書いていた場合に、MJIT無しのビルドとMJIT有りのビルドが両方実行されて、MJITの有無でどれくらいビルドの時間が変わっているか比較しやすいというメリットもあります。