Travis CIでビルドの回数を抑える時
C++の場合は、一回のビルド・テストに非常に時間がかかるので、ビルドを減らしたい場合がある。 Travis CIでは、設定で
Build pushs
- push時にビルド
Build pull requests
- pull request 時にビルド
がある。 両方ONにすると、PR時に2回ビルドが走ることになる。 Travis CIの場合この2回のビルドは同じビルドではないが、PRのビルドだけ通れば十分である場合が多い。 以下のような設定を実現する方法を記載する。
- PRでのbranchは全てビルド
- pushでのビルドはmaster branchのみ
単純にBuild pushs
をoffにすると、merge後のmaster
のビルドが行われずに、badgeが更新されない。
補足
PRのビルドはmaster
branchへのmerge後のビルドをしているので、pushのビルドとは異なる。
Travis CIが裏でmergeのコミットを作成し、ビルドしている。
方法
Travis CIの設定から以下をONにする。
Build pushs
Build pull requests
.travis.yml
に以下を記載する。
branches: only: # branchs through PR are built - master