「Context deadline exceeded」 についてのエラーの解決方法(Freeプラン対応)

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


具体には、以下の画面が見られます。

Screen_Shot_2021-11-24_at_17.44.03.png

 

プランの変更に関わり、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/

お困りの点やご不明な点がありましたら、サポートチームまでお気軽にお問い合わせください。

この記事は役に立ちましたか?
8人中3人がこの記事が役に立ったと言っています

コメント

0件のコメント

記事コメントは受け付けていません。