8.09.2015

CircleCI Failed After Restoring Cache Files

CircleCI がキャッシュ復元処理の後で失敗した

 

事象

CircleCI を回していたら、Restore cache の後でエラー終了となってしまった。

画面には以下のようなメッセージが出現している。

Looks like we had a bug in our infrastructure, or that of our providers (generally GitHub or AWS) We should have automatically retried this build. We've been alerted of the issue and are almost certainly looking into it, please contact us if you're interested in the cause of the problem.

 

原因

チャットでサポートに連絡したら、なんと 30分で回答が返ってきた。

We currently can’t cache files outside the home directory. E.g. they will be cached, but the build will err out on restoring the cache. I see that you are caching a few files in /usr/local, would that be an option for you to store them in the home directory, cache them and then symlink them into the right place?

実は今回、circle.yml で /usr/local 配下のあるディレクトリをキャッシュ対象として指定していた。
現状ではホームディレクトリ以外の場所はキャッシュできないようだ。

キャッシュ保存時は成功したように見えるが、復元の時点でエラーが発生するとのこと。

対応策としては、ホームディレクトリ配下にキャッシュ用のディレクトリを作って、そこにシンボリックリンクを張るとよいと教えてもらった。
後日対応し、問題なく稼動している。

dependencies:
  pre:
    - sudo mkdir -p yyyyy /usr/local/lib/xxxxx
    - sudo ln -s $PWD/yyyyy /usr/local/lib/xxxxx/yyyyy

 

StackShare でもカスタマーサポートが良いと好評だが、それを実感することができてよかった。

 

CircleCI については、こんなものも書きました。

0 件のコメント:

コメントを投稿