Bug #9213
closed
[SDKs] After a fresh install, `arv` tells you to install gems
Added by Brett Smith over 8 years ago.
Updated over 8 years ago.
Description
% gem install --user arvados-cli
[it installs a bunch of dependencies, it works]
% arv
Please install all required gems:
gem install activesupport andand curb google-api-client json oj trollop yaml
[it exits 1]
Here's the code from arv
that leads up to the error, along with the exception that leads to the exit:
% irb
irb(main):001:0> begin
irb(main):002:1* require 'curb'
irb(main):003:1> require 'rubygems'
irb(main):004:1> require 'arvados/google_api_client'
irb(main):005:1> require 'json'
irb(main):006:1> require 'pp'
irb(main):007:1> require 'trollop'
irb(main):008:1> require 'andand'
irb(main):009:1> require 'oj'
irb(main):010:1> require 'active_support/inflector'
irb(main):011:1> require 'yaml'
irb(main):012:1> require 'tempfile'
irb(main):013:1> require 'net/http'
irb(main):014:1> end
LoadError: cannot load such file -- google/api_client
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:144:in `require'
from /home/brett/.gem/ruby/2.1.0/gems/arvados-0.1.20160420143004/lib/arvados/google_api_client.rb:1:in `<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:144:in `require'
from (irb):4
from /usr/bin/irb:11:in `<main>'
Google API client gem seems to be buggy:
% gem list google
*** LOCAL GEMS ***
google-api-client (0.9.pre5, 0.6.4)
googleauth (0.5.1)
% irb
irb(main):001:0> require 'google/api_client'
Gem::LoadError: can't activate jwt-0.1.13, already activated jwt-1.5.4
from /usr/lib/ruby/2.1.0/rubygems/specification.rb:2052:in `raise_if_conflicts'
from /usr/lib/ruby/2.1.0/rubygems/specification.rb:1262:in `activate'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_gem.rb:54:in `gem'
from /home/brett/.gem/ruby/2.1.0/gems/signet-0.4.5/lib/signet/oauth_2/client.rb:25:in `<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/brett/.gem/ruby/2.1.0/gems/google-api-client-0.6.4/lib/google/api_client/auth/jwt_asserter.rb:16:in `<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:73:in `require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:73:in `require'
from /home/brett/.gem/ruby/2.1.0/gems/google-api-client-0.6.4/lib/google/api_client/service_account.rb:16:in `<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:73:in `require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:73:in `require'
from /home/brett/.gem/ruby/2.1.0/gems/google-api-client-0.6.4/lib/google/api_client.rb:31:in `<top (required)>'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
from /usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:144:in `require'
from (irb):1
from /usr/bin/irb:11:in `<main>'
The cli gem also has a dependency on google api client, which has the same problem:
s.add_runtime_dependency 'google-api-client', '~> 0.6', '>= 0.6.3', '<0.9'
Peter Amstutz wrote:
The cli gem also has a dependency on google api client, which has the same problem:
Thanks. I thought it inherited that from arvados, but it turns out some of the tools require 'google/api_client'
directly. Made the same change in arvados-cli.gemspec
.
- Status changed from New to Resolved
- % Done changed from 0 to 100
Applied in changeset arvados|commit:4c4387de5857ef00899fcb760a7cfc5ad4b76268.
Also available in: Atom
PDF