projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
20846: Update sdk/ruby for Ruby 3.
[arvados.git]
/
sdk
/
ruby
/
lib
/
arvados.rb
diff --git
a/sdk/ruby/lib/arvados.rb
b/sdk/ruby/lib/arvados.rb
index a72a9f8241f442f20d6c7559baedeb79582cc218..63550cd37c71840fed8bdd5a7e90734810a488b1 100644
(file)
--- a/
sdk/ruby/lib/arvados.rb
+++ b/
sdk/ruby/lib/arvados.rb
@@
-7,6
+7,7
@@
require 'active_support/inflector'
require 'json'
require 'fileutils'
require 'andand'
require 'json'
require 'fileutils'
require 'andand'
+require 'net/http'
require 'arvados/google_api_client'
require 'arvados/google_api_client'
@@
-20,7
+21,7
@@
class Arvados
attr_reader :request_id
def execute(*args)
attr_reader :request_id
def execute(*args)
- @request_id = "req-" + Random
::DEFAULT
.rand(2**128).to_s(36)[0..19]
+ @request_id = "req-" + Random
.new
.rand(2**128).to_s(36)[0..19]
if args.last.is_a? Hash
args.last[:headers] ||= {}
args.last[:headers]['X-Request-Id'] = @request_id
if args.last.is_a? Hash
args.last[:headers] ||= {}
args.last[:headers]['X-Request-Id'] = @request_id
@@
-75,7
+76,7
@@
class Arvados
_arvados = self
namespace_class = Arvados.const_set "A#{self.object_id}", Class.new
self.arvados_api.schemas.each do |classname, schema|
_arvados = self
namespace_class = Arvados.const_set "A#{self.object_id}", Class.new
self.arvados_api.schemas.each do |classname, schema|
- next if classname.match
/List$/
+ next if classname.match
(/List$/)
klass = Class.new(Arvados::Model) do
def self.arvados
@arvados
klass = Class.new(Arvados::Model) do
def self.arvados
@arvados
@@
-136,7
+137,7
@@
class Arvados
end
def debuglog *args
end
def debuglog *args
- self.class.debuglog
*args
+ self.class.debuglog
(*args)
end
def config(config_file_path="~/.config/arvados/settings.conf")
end
def config(config_file_path="~/.config/arvados/settings.conf")
@@
-188,6
+189,15
@@
class Arvados
@config = config
end
@config = config
end
+ def cluster_config
+ return @cluster_config if @cluster_config
+
+ uri = URI("https://#{config()["ARVADOS_API_HOST"]}/arvados/v1/config")
+ cc = JSON.parse(Net::HTTP.get(uri))
+
+ @cluster_config = cc
+ end
+
class Model
def self.arvados_api
arvados.arvados_api
class Model
def self.arvados_api
arvados.arvados_api
@@
-196,10
+206,10
@@
class Arvados
arvados.client
end
def self.debuglog(*args)
arvados.client
end
def self.debuglog(*args)
- arvados.class.debuglog
*args
+ arvados.class.debuglog
(*args)
end
def debuglog(*args)
end
def debuglog(*args)
- self.class.arvados.class.debuglog
*args
+ self.class.arvados.class.debuglog
(*args)
end
def self.api_exec(method, parameters={})
api_method = arvados_api.send(api_models_sym).send(method.name.to_sym)
end
def self.api_exec(method, parameters={})
api_method = arvados_api.send(api_models_sym).send(method.name.to_sym)