Gemfileとは?
Gemfileの解説。何をするもので、CI/CDでどう重要かを含みます。
GemfileはRubyプロジェクトのgem依存関係を宣言するもので、Bundlerが読み取ります。
何であるか
gemとバージョン制約を列挙します。Bundlerはそれらを解決し、正確なバージョンをGemfile.lockに書き込みます。
CI/CDで重要な理由
CIはbundle installを実行し、再現性のためにbundle install --frozenを使うかBUNDLE_FROZENを設定します。これはGemfileとlockが同期していない場合に失敗します。
重要なポイント
- GemfileはRubyのgemを宣言します。
- BundlerがこれをGemfile.lockへ解決します。
- CIではfrozenモードを使いましょう。