はじめに
- 以前、以下のような高速化をはかり改善した
- 【TravisCI高速化】bundle installを毎回走らせないようにキャッシュする
- 【TravisCI高速化】並列実行で実行時間を短縮する
- しかし、気付けばapt-getのインストールを結構叩いていることに気付いたのでさらに高速化につながる改善が出来ないかと検証してみた
キャッシュの利用方法
- .travis.ymlのcacheを有効にするだけ
.travis.yml
cache: apt
# cache対象を複数指定する場合
cache:
- bundler
- apt
# 複数書いておいて明示的に有効/無効と書くとき
cache:
- bundler: false
- apt: true
効果確認
- 正しく設定できていればTravisのコンソールに「Setting up APT cache」と表示される
- どれだけ時間短縮になるのかの検証は難しいかもしれません
- 全く変更を加えていないものでも毎回テスト時間は異なります
- そして、どれだけapt-get install叩いているのかでまた変化が見えやすかったりそうでなかったりすると思います
- 特段理由がなければcacheは有効にしておけばよいのかなと...
- また、何か問題や嬉しい効果がありそうなら追記します!
~ただの宣伝~
- 全国のSeleniumer必読
- Seleniumerといっていますが、Selenium, SauceLabs, Travis, Jenkinsに関するノウハウ書いているのでよかったら参考にしてみてください