トップ/記事一覧
GitHub Actions でキャッシュヒットしなくて悩んだ話
📆2022/11/15🔖 Github Actions
GitHub Actions の actions/cache で node_modules をキャッシュしていたが、キーが一致しているキャッシュが存在するのに、キャッシュヒットしなくてしばらくハマっていた。
https://github.com/actions/cache
結論
🐈
僕たちのデフォルトブランチは develop ブランチに設定していたが、develop ブランチのキャッシュが作成されておらず、feature ブランチのキャッシュだけが作成されていた。
特に package.json に変更を加えていないのにも関わらず、develop ← feature の PR を作成した際、初回の CI ではキャッシュヒットせず yarn install が実行されるが、2回目以降の CI ではキャッシュヒットするという挙動で不思議に思っていた。
きちんとドキュメントを読むのは大事だ。
🐈
細かい部分のベストプラクティスについて(分かってないこと)
キャッシュヒットしなかった場合、feature ブランチのキャッシュファイルが作成されちゃうような気がするんだけど、これを防ぐ術はないのか。develop ブランチのキャッシュが更新されるべきな気がするんだけど、これは master ← develop の PR 時に生成するべきなのか、
それとも develop ブランチ push 時のスクリプトでキャッシュ再生成させるとか仕込むべきか。feature / develop / master ブランチ運用してる人もしいたらこのへんの話がしたい。