Open3

CI上のnpmキャッシュとvitestでハマった話

ken7253ken7253

概要

vitest + RTLを導入した時にCI上でvitestが動かない現象が発生した。

ken7253ken7253

何が起きていたのか

結論から言うと下記のような状態になっていた

  • 手元でvitestとRTLを npm i -Dでインストール
  • package.jsonpackage-lock.jsonが更新されたのでそれをコミット
  • この時依存関係としてdarwin-arm64用のrollupがpackage-lock.jsonに登録される
  • CIが実行される時npm cipackage-lock.jsonを元にパッケージがインストールされる
  • CI環境はlinux-x64-gnuなどLinux用のrollupがインストールされておらずエラーになる