bundle-cache - Zabalte potřebné soubory .gem do aplikace
bundle cache
alias: package, pack
Zkopírujte všechny soubory .gem potřebné ke spuštění aplikace do adresáře vendor/cache. V budoucnu, když budete spouštět bundle install(1) bundle-install.1.html, používejte drahokamy v mezipaměti přednostně před drahokamy na rubygemech. org.
Příkaz bundle cache může kromě souborů .gem také zabalit závislosti :git a :path. To je třeba explicitně povolit pomocí možnosti --all. Po použití bude možnost --all zapamatována.
Při použití drahokamů, které mají různé balíčky pro různé platformy, Bundler podporuje ukládání drahokamů do mezipaměti pro jiné platformy, kde byl Gemfile vyřešen (tj. přítomen v lockfile) v vendor/cache. To je třeba povolit pomocí možnosti --all-platforms. Toto nastavení bude zapamatováno ve vaší místní konfiguraci svazku.
Pokud ve výchozím nastavení spustíte bundle install(1) bundle-install.1.html po spuštění balíku cache(1) bundle-cache.1.html, bundler se stále připojí k rubygems.org, aby zkontroloval, zda pro některý z drahokamů v vendor/cache existuje drahokam specifický pro platformu.
Zvažte například tento Gemfile(5):
source "https://rubygems.org"
gem "nokogiri"Pokud spustíte paměť balíčku pod C Ruby, balíček načte verzi nokogiri pro platformu "ruby". Pokud nasadíte do JRuby a spustíte instalaci balíčku, bude balíček nucen zkontrolovat, zda existuje platforma "java" nokogiri.
I když je drahokam nokogiri pro platformu Ruby technicky přijatelný na JRuby, má rozšíření C, které na JRuby neběží. Výsledkem je, že se bundler ve výchozím nastavení stále připojuje k rubygems.org, aby zkontroloval, zda má verzi některého z vašich drahokamů specifičtější pro vaši platformu.
Tento problém se také neomezuje na platformu java. Podobný (běžný) problém může nastat při vývoji na Windows a nasazení na Linux, nebo dokonce při vývoji na OSX a nasazení na Linux.
Pokud s jistotou víte, že drahokamy zabalené v vendor/cache jsou vhodné pro platformu, na které se nacházíte, můžete spustit bundle install --local a přeskočit kontrolu, zda jsou vhodnější drahokamy a použijte ty z vendor/cache.
Jedním ze způsobů, jak si být jisti, že máte správné platformované verze všech svých drahokamů, je spustit paměť balíčku na identickém počítači a drahokamy zkontrolovat. Můžete například spustit paměť balíčku na identickém pracovním boxu během přípravného procesu a před nasazením do produkce zkontrolovat dodavatel/mezipaměť.
Ve výchozím nastavení balíček cache(1) bundle-cache.1.html načte a také nainstaluje drahokamy do výchozího umístění. Chcete-li zabalit závislosti do vendor/cache, aniž byste je instalovali do místního umístění instalace, můžete spustit balíček cache --no-install.
V Bundleru 2.1 cache převzala funkce package a nyní jsou package a pack aliasy mezipaměť.