-
Notifications
You must be signed in to change notification settings - Fork 553
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Vendorizing google-cloud-ruby only packages google-protobuf for current OS #1592
Comments
This looks like a Bundler issue to me. Can you suggest any changes we can make to support the behavior you are looking for? My understanding is that for Bundler to support multiple platforms you need to add the platform using |
Thanks for the lead! Did some more tracing and there is a bug/undocumented quirk in bundler 1.15.1 where the Here's what ended up working for me:
This results in a vendor/cache with
which works nicely because the platform-less version will compile at |
Glad you figured it out. Thanks for sharing the solution! |
https://nvd.nist.gov/vuln/detail/CVE-2018-1000201 Configured bundler to update cached gems for all platforms. Helpful links on that: * https://bundler.io/v1.16/man/bundle-config.1.html * rubygems/bundler#5863 * https://github.com/bundler/bundler/issues/5989 * googleapis/google-cloud-ruby#1592
If you vendorize a gemset that includes google-cloud-ruby (
bundle package --all
), the vendor folder will only include the google-protobuf .gem for the current platform. This results in a missing gem error if you try tobundle install --local
on another platform.For example: if I
bundle package --all
on OS X, vendor/cache will include google-protobuf-3.3.0-universal-darwin.gem. If I try to runbundle install --local
inside a Docker container, the install fails becausegoogle-protobuf-3.3.0-x86_64-linux.gem
does not exist.As a workaround, it's possible to manually copy the set of platform variants into vendor/cache. But it's a bit of an annoyance since this has to be done each time you update the version of the gem.
The text was updated successfully, but these errors were encountered: