summaryrefslogtreecommitdiff
path: root/man/bundle-package.1.txt
diff options
context:
space:
mode:
authorhsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-11-02 23:07:56 +0000
committerhsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-11-02 23:07:56 +0000
commit59c8d50653480bef3f24517296e6ddf937fdf6bc (patch)
treedf10aaf4f3307837fe3d1d129d66f6c0c7586bc5 /man/bundle-package.1.txt
parent7deb37777a230837e865e0a11fb8d7c1dc6d03ce (diff)
Added bundler as default gems. Revisit [Feature #12733]
* bin/*, lib/bundler/*, lib/bundler.rb, spec/bundler, man/*: Merge from latest stable branch of bundler/bundler repository and added workaround patches. I will backport them into upstream. * common.mk, defs/gmake.mk: Added `test-bundler` task for test suite of bundler. * tool/sync_default_gems.rb: Added sync task for bundler. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'man/bundle-package.1.txt')
-rw-r--r--man/bundle-package.1.txt79
1 files changed, 79 insertions, 0 deletions
diff --git a/man/bundle-package.1.txt b/man/bundle-package.1.txt
new file mode 100644
index 0000000000..cbe957333a
--- /dev/null
+++ b/man/bundle-package.1.txt
@@ -0,0 +1,79 @@
+BUNDLE-PACKAGE(1) BUNDLE-PACKAGE(1)
+
+
+
+1mNAME0m
+ 1mbundle-package 22m- Package your needed 1m.gem 22mfiles into your application
+
+1mSYNOPSIS0m
+ 1mbundle package0m
+
+1mDESCRIPTION0m
+ Copy all of the 1m.gem 22mfiles needed to run the application into the 1mven-0m
+ 1mdor/cache 22mdirectory. In the future, when running [bundle
+ install(1)][bundle-install], use the gems in the cache in preference to
+ the ones on 1mrubygems.org22m.
+
+1mGIT AND PATH GEMS0m
+ Since Bundler 1.2, the 1mbundle package 22mcommand can also package 1m:git 22mand
+ 1m:path 22mdependencies besides .gem files. This needs to be explicitly
+ enabled via the 1m--all 22moption. Once used, the 1m--all 22moption will be
+ remembered.
+
+1mSUPPORT FOR MULTIPLE PLATFORMS0m
+ When using gems that have different packages for different platforms,
+ Bundler 1.8 and newer support caching of gems for other platforms where
+ the Gemfile has been resolved (i.e. present in the lockfile) in 1mven-0m
+ 1mdor/cache22m. This needs to be enabled via the 1m--all-platforms 22moption.
+ This setting will be remembered in your local bundler configuration.
+
+1mREMOTE FETCHING0m
+ By default, if you run 1mbundle install(1)22m](bundle-install.1.html) after
+ running bundle package(1) 4mbundle-package.1.html24m, bundler will still
+ connect to 1mrubygems.org 22mto check whether a platform-specific gem exists
+ for any of the gems in 1mvendor/cache22m.
+
+ For instance, consider this Gemfile(5):
+
+
+
+ source "https://rubygems.org"
+
+ gem "nokogiri"
+
+
+
+ If you run 1mbundle package 22munder C Ruby, bundler will retrieve the ver-
+ sion of 1mnokogiri 22mfor the 1m"ruby" 22mplatform. If you deploy to JRuby and
+ run 1mbundle install22m, bundler is forced to check to see whether a 1m"java"0m
+ platformed 1mnokogiri 22mexists.
+
+ Even though the 1mnokogiri 22mgem for the Ruby platform is 4mtechnically0m
+ acceptable on JRuby, it has a C extension that does not run on JRuby.
+ As a result, bundler will, by default, still connect to 1mrubygems.org 22mto
+ check whether it has a version of one of your gems more specific to
+ your platform.
+
+ This problem is also not limited to the 1m"java" 22mplatform. A similar
+ (common) problem can happen when developing on Windows and deploying to
+ Linux, or even when developing on OSX and deploying to Linux.
+
+ If you know for sure that the gems packaged in 1mvendor/cache 22mare appro-
+ priate for the platform you are on, you can run 1mbundle install --local0m
+ to skip checking for more appropriate gems, and use the ones in 1mven-0m
+ 1mdor/cache22m.
+
+ One way to be sure that you have the right platformed versions of all
+ your gems is to run 1mbundle package 22mon an identical machine and check in
+ the gems. For instance, you can run 1mbundle package 22mon an identical
+ staging box during your staging process, and check in the 1mvendor/cache0m
+ before deploying to production.
+
+ By default, bundle package(1) 4mbundle-package.1.html24m fetches and also
+ installs the gems to the default location. To package the dependencies
+ to 1mvendor/cache 22mwithout installing them to the local install location,
+ you can run 1mbundle package --no-install22m.
+
+
+
+ October 2018 BUNDLE-PACKAGE(1)