console.lealog();

@leader22のWeb系に関する勉強めもブログですのだ

CircleCIでYarnを使おうとしたら、phantomjs-prebuiltがインストールできなかった対応

とある昔ながらのプロジェクトで、CircleCIでyarnしようとしたときにコケた。


Path must be a string. Received undefined

とかいってエラーになってビルドがコケる。
なぜか。

設定の見直し

念のために。
必要なステップは2つ。

circle.yml

Using Yarn (the npm replacement) on CircleCI - CircleCI にある設定内容を、`circle.yml`にちゃんと定義する。

Build Environment

プロジェクトの設定にあるので変える。
`yarn`がプリインストールされてるのは、`Ubuntu 14.04`以降。

それでもダメ

このプロジェクトのどこで`phantomjs`なんか使ってるんやろーと思ったら、e2eテストのための`karma-phantomjs-launcher`がいた。

バージョンがだいぶ古かったので、最新にあげた。

するとエラーが消えた

やったね。
どうやら中で依存してる古い`phantomjs-prebuild`が原因だったらしい。

See https://github.com/yarnpkg/yarn/issues/987