Freeプランのユーザーは、ビルドが1時間以上かかった場合、タイムアウトが発生する恐れがあります。
この場合は、以下のようなエラーが出ます。
Try out a larger resource class or running tests in parallel to speed up job execution. Upgrade your pricing plan to take advantage of longer max job runtimes.
context deadline exceeded
具体には、以下の画面が見られます。
プランの変更に関わり、Freeプランのビルドは最大実行時間が1時間に制限されています。
プランのアップグレードになりますと、より長い最大実行時間の利用ができるようになり、他の改善点もあります。
Freeプランを継続する場合、より大きなリソースクラスに変更すると1時間以内にビルドを完了させる一つの方法です。例えば、FreeプランでのビルドはDockerとMachine Executorでも`large`のリソースクラスが利用できます。
より大きなリソースクラスの使用の場合、増加のCPUとメモリにアクセスするため、ビルド時間の短縮ができます。
リソースクラスについての関連情報はこちらにご覧ください。
https://circleci.com/docs/ja/2.0/executor-types/#available-docker-resource-classes
Largeのリソースクラスに使用の設定に関しては、以下のサンプルコードにご参考ください。
docker:
- image: ubuntu:bionic
↓
docker:
- image: ubuntu:bionic
resource_class: large
プランと使用可能なリソースクラスについての詳細は、こちらのページでご確認ください。
https://circleci.com/ja/pricing/
さらに、ビルド時間の短縮もう一つの方法は、並列処理の利用をおすすめします。こちらはテストの実行に関することに対して特に有効です。
並列処理の利用に関しては、以下のサンプルコードにご参考ください。
docker:
- image: ubuntu:bionic
↓
docker:
- image: ubuntu:bionic
parallelism: 4
詳しくは、こちらのリンクに是非ご覧ください。
https://circleci.com/docs/2.0/parallelism-faster-jobs/
また、最適化するポイントは、以下のブログ記事で説明致しますので、お気になり方は是非見てください。https://circleci.com/blog/six-optimization-tips-for-your-config/
お困りの点やご不明な点がありましたら、サポートチームまでお気軽にお問い合わせください。
コメント
記事コメントは受け付けていません。