2.13.2015

Running Time-consuming Command in Travis CI

Travis CI で時間のかかるコマンドを実行する

 

目的

C++ でコンパイル時計算を多用すると、ビルドだけで 10分以上かかってしまうことも珍しくない。

しかし、Travis CI では 10分間何も出力がないと強制終了となってしまう。

No output has been received in the last 10 minutes, 
this potentially indicates a stalled build or something wrong with the build itself.

The build has been terminated

 

対応

途方に暮れていたら、なんと公式アカウントから直々にメンションをもらった。

このような目的のために、travis_wait という bash の関数が用意されているらしい。

 

before_script:
  - travis_wait make build

こう書けば、20分間無出力の状態が続いても、Travis CI は待っていてくれる。

しかしそれでも時間が足りないと、やはりタイムアウトとなってしまう。

Still running (20 of 20): make build

Timeout (20 minutes) reached. Terminating "make build"

The command "travis_wait make build" failed and exited with 1 during .

Your build has been stopped.

こんな場合は、以下のように待機時間(分)をパラメータに付け加えればよい。

before_script:
  - travis_wait 60 make build

これで、ビルドのタイムアウトが 60分に延長された。

 

References

 

 

0 件のコメント:

コメントを投稿