Unable to Install Gems from Provider Cache

Although Capistrano installs a package with the --local flag, stones from the providerโ€™s cache are NOT set to the general package path. Instead, they tell me that:

Some stones seem to be missing from your vendor / cache directory.

Could not find libv8-3.3.10.4 in any of the sources

libv8-3.3.10.4 is definitely located in the provider / cache. Does anyone know why bundler will not install gems from the cache?

The complete Capistrano command is executed below.

 "cd /home/ari/apps/air/releases/20120209214139 && bundle install --gemfile /home/ari/apps/air/releases/20120209214139/Gemfile --path /home/ari/apps/air/shared/bundle --deployment --local --quiet --without development test" 
+4
source share
1 answer

From bundle help install :

 --local Do not attempt to connect to rubygems.org, instead using just the gems already present in Rubygems' cache or in vendor/cache. Note that if a more appropriate platform-specific gem exists on rubygems.org, it will not be found. 

Note. libv8 builds its own extensions upon first installation. This can cause problems if you are producing a gem for one platform and trying to use it on another.

Either the stones are not present in the Rubygems cache on the server, or the gems are not present in vendor/cache in your deployment. Therefore, if you see a gem in your vendor/cache directory, then it may be that the provider does not know where to look for your vendor/cache gems.

What is the result of cd /home/ari/apps/air/releases/20120209214139 && bundle list ? If it does not appear there, but you can find it on the server, then you know that the supplier does not know where the vendor/cache gems are located.

Try to execute gem env through your login and compare with the output of gem env via Capistrano. See if the GEM PATHS output is different.

0
source

Source: https://habr.com/ru/post/1395684/


All Articles