やんごとなき事情により bundler の gem_tasks の動作を確認する必要があったのでコードを読みました。
bundler/gem_tasks の rake install から gem build・install を通って gem が install されるまで
何が起こっているかコードリーディングをします。
bundle/gem_tasks
Bundler の gem_tasks ファイルから読み進めます。
gem_task の rake install
は build_gem => install_gem の順で内部処理が呼び出されます。
gem_helper.rb - L38-L46 - bundler/bundler -GitHub
build_gem
- gem build コマンドを実行して Ruby プロジェクトのビルドを実行します。これだけ。
gem_helper.rb - L74-L83 - bundler/bundler -GitHub
install_gem
- gem build で作成した gem を gem install します。これだけ
gem_helper.rb - L85-L90 - bundler/bundler -GitHub
RubyGems
rake install
の処理のうち、 bundler 側が受け持っているのは gem build と gem install の呼び出し部分でした。
実際のビルド・インストール処理本体を確認するために RubyGems(gem コマンド) のコードを読みます。
gem build
各リンクは対応するソースコードへのリンクになっています。
gem install
各リンクは対応するソースコードへのリンクになっています。
おまけ
コードリーディングについて以前に調べて実践したことを忘れてコードリーディングしていたことに気づいたので復習しますよ。https://t.co/Ffbr2utfcA
— てぃーびー📺 (@tbpgr) 2017年2月22日