ruby-openstack / ruby-openstack Goto Github PK
View Code? Open in Web Editor NEWRuby binding for Openstack API - supports Keystone, Nova, Swift, Cinder and Neutron
License: Other
Ruby binding for Openstack API - supports Keystone, Nova, Swift, Cinder and Neutron
License: Other
If i have a container in swift, wich contain more than 10000 objects, than i can't get full list with cont.objects_detail
or cont.objects
.
So, please, implement support of getting long lists of objects in Swift.
Hey ,
code --- swiftstorage.container("myfiles").create_object("file-from-ruby-api", {:metadata=>{"herpy"=>"derp"}, :content_type=>"text/plain"}, "this is the data from mem")
got error message --- /usr/local/rvm/gems/ruby-2.1.2/gems/openstack-1.1.2/lib/openstack/swift/connection.rb:171:in read': wrong number of arguments (2 for 1) (ArgumentError) from /usr/local/rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http/generic_request.rb:197:in
copy_stream'
from /usr/local/rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http/generic_request.rb:197:in send_request_with_body_stream' from /usr/local/rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http/generic_request.rb:132:in
exec'
from /usr/local/rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:1406:in block in transport_request' from /usr/local/rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:1405:in
catch'
from /usr/local/rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:1405:in transport_request' from /usr/local/rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:1378:in
request'
from /usr/local/rvm/gems/ruby-2.1.2/gems/openstack-1.1.2/lib/openstack/connection.rb:132:in put_object' from /usr/local/rvm/gems/ruby-2.1.2/gems/openstack-1.1.2/lib/openstack/swift/storage_object.rb:252:in
write'
from /usr/local/rvm/gems/ruby-2.1.2/gems/openstack-1.1.2/lib/openstack/swift/storage_object.rb:58:in create' from /usr/local/rvm/gems/ruby-2.1.2/gems/openstack-1.1.2/lib/openstack/swift/container.rb:183:in
create_object'
from ruby-swift.rb:56:in <class:SwiftStorage>' from ruby-swift.rb:7:in
So I tested ruby(1.8.7 1.9.3) is OK , But 2.0.0.2.1.2 show that error message , Is there any update for ruby-openstack about new ruby version(2.0.0+) recently ?
Thanks all .
Hi all,
is there any way, with your api implementation to get a list of servers from all tenants, like passing the "--all-tenants" flag to # nova list ? or maybe to have a tenant list in order to iterate through it to have all servers ?
Thanx a lot !
Cheers
Ruby 3.0 removed URI.encode
. This can be replaced by URI.encode_www_form_component
though.
I started implementing it, wanted to make sure I'm not duplicating effort. Also, I am a little confused as to how you are handling the versions of APIs for things (are you assuming that an endpoint returns the version to use, are you handling all of the possibilities of each version?)
Thanks!
I'm not sure where to report this: when using the create_object container method, I get the above error
container.create_object(content.name, {:metadata=>content.meta, :content_type=>content.mime_type}, File.open(cf, 'rb') {|file| file.read })
If I leave out the reading of the file, the object is created with 0 bytes
container.create_object(content.name, {:metadata=>content.meta, :content_type=>content.mime_type})
stack trace:
ArgumentError - wrong number of arguments (2 for 1):
/Users/sirbertly/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http/generic_request.rb:197:in `send_request_with_body_stream'
/Users/sirbertly/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http/generic_request.rb:132:in `exec'
/Users/sirbertly/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:1406:in `block in transport_request'
/Users/sirbertly/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:1405:in `transport_request'
/Users/sirbertly/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/net/http.rb:1378:in `request'
openstack (1.1.2) lib/openstack/connection.rb:132:in `put_object'
openstack (1.1.2) lib/openstack/swift/storage_object.rb:252:in `write'
openstack (1.1.2) lib/openstack/swift/storage_object.rb:58:in `create'
openstack (1.1.2) lib/openstack/swift/container.rb:183:in `create_object'
lib/kili_data_store.rb:34:in `block (2 levels) in write'
When I use vcr/webmock with ruby-openstack, I get an exception where webmock ends up calling ChunkedConnectionWrapper.read
with 0 arguments (and ChunkedConnectionWrapper.read
requires at least 1 argument).
As I trace the code, I see ChunkedConnectionWrapper.read
defers to StringIO.read
which accepts 0 arguments!
It seems, then, ChunkedConnectionWrapper.read
should have method signature:
def read(length=nil, buffer=nil)
instead of def read(length, buffer=nil)
Does this make sense?
I want to upload objects to Swift container. Currently object.write("penguins have knees")
will return true without update of the object in Swift. The response from Swift API is following: <Net::HTTPCreated 201 Created readbody=true>
.
My first guess is that this happens because of Content-Length
is left to be 0 inside this code.
After I passed String
object to OpenStack::Connection#put_object as a data everything worked.
First of all, thanks for this awesome project. I'm moving from S3 to Openstack/Swift and this seems the gem to go for handling Swift objects in my Rails app.
My question is, because I can't find it in the code nor the readme, does this gem support Temporary URL middleware, as described here: http://docs.openstack.org/developer/swift/api/temporary_url_middleware.html ?
Recently I was having issues with the Openstack api not being available due to network issues at our hosting provider. The default timeout is 60 seconds with 3 retries which would hang my Sidekiq process for 3 minutes.
Would you be open to a PR which lets you set the http timeout as an option?
def read(length, buffer=nil)
chunk = @file.read(length)
return nil if chunk.nil?
buffer << chunk if buffer # Will create a big string object
chunk
end
During debugging my issue I notice that when create a connection OpenStack::Connection.create(connection4)
it always send a GET
request, I did more debugging and I found that it detects my auth_url
as version 1
. There is an issue in the regex in init method Line329
My auth_url
is https://api.example.com/identity/v3/auth/tokens
Suggested regex
def self.init(conn)
if conn.auth_path.match? /(v3)+\d{0,2}/
AuthV30.new(conn)
elsif conn.auth_path.match? /(v2)+\d{0,2}/
AuthV20.new(conn)
else
AuthV10.new(conn)
end
end
If you consider this a valid issue, I can PR this as a fix
Hi!
Since the release of Openstack Havana the preferred version of Identity to use is v3. Some cloud providers have now migrated to only supporting v3 for token generation to get support for domains.
Currently Ruby OpenStack does not work with providers that require support for Identity v3.
Would it be possible to add support for Identity v3 in this project as well?
Should be get_floating_ip_pools
Supporting OpenStack heat would allow creation of whole stacks using ruby-openstack.
With commit 582514930d2fde387d6cfc743d266895282327a1, when regenerating gemspec file, you introduced openstack as its own dependency, causing circular dependency errors:
$ gem install --debug --backtrace --verbose openstack --version 2.0.0
NOTE: Debugging mode prints all exceptions even when rescued
Exception `LoadError' at /home/myuser/.rbenv/versions/2.3.1/lib/ruby/2.3.0/resolv.rb:171 - LoadError
HEAD https://api.rubygems.org/api/v1/dependencies
200 OK
GET https://api.rubygems.org/api/v1/dependencies?gems=openstack
200 OK
Exception `Resolv::DNS::Config::NXDomain' at /home/myuser/.rbenv/versions/2.3.1/lib/ruby/2.3.0/resolv.rb:549 - _rubygems._tcp.api.rubygems.org
Exception `Resolv::ResolvError' at /home/myuser/.rbenv/versions/2.3.1/lib/ruby/2.3.0/resolv.rb:494 - DNS result has no information for _rubygems._tcp.api.rubygems.org
Getting SRV record failed: DNS result has no information for _rubygems._tcp.api.rubygems.org
Exception `Gem::Resolver::Molinillo::CircularDependencyError' at /home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb:156 - There is a circular dependency between openstack and openstack
ERROR: While executing gem ... (Gem::Resolver::Molinillo::CircularDependencyError)
There is a circular dependency between openstack and openstack
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb:156:in `add_edge'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb:103:in `block in add_child_vertex'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb:97:in `each'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb:97:in `add_child_vertex'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:421:in `block in require_nested_dependencies_for'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:421:in `each'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:421:in `require_nested_dependencies_for'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:411:in `activate_spec'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:376:in `attempt_to_activate_new_spec'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:320:in `attempt_to_activate'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:147:in `process_topmost_state'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolution.rb:72:in `resolve'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver/molinillo/lib/molinillo/resolver.rb:42:in `resolve'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/resolver.rb:191:in `resolve'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/request_set.rb:368:in `resolve'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/dependency_installer.rb:484:in `resolve_dependencies'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/commands/install_command.rb:194:in `install_gem'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/commands/install_command.rb:255:in `block in install_gems'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/commands/install_command.rb:251:in `each'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/commands/install_command.rb:251:in `install_gems'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/commands/install_command.rb:158:in `execute'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/command.rb:310:in `invoke_with_build_args'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/command_manager.rb:169:in `process_args'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/command_manager.rb:139:in `run'
/home/myuser/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/gem_runner.rb:55:in `run'
/home/myuser/.rbenv/versions/2.3.1/bin/gem:21:in `<main>'
Also, any particular reason OpenStack::VERSION stopped being used instead of hardcoding versions at gemspec?
Version 1.1.2
still installs just fine, although 1.2.0
doesn’t even exist in RubyGems listing.
Thanks!
The OpenStack Volume Connection #create_volume method doesn't explicitly say what the options are that should be in the options
hash. Is there anywhere where that options hash for volumes would be listed out?
I can't associate securitygroups :
newserver = os.create_server(:name => "toto" :security_groups => "default", :imageRef => image.id, :flavorRef => flavor.id)
The same with something different than default.
Error on prompt :
/home/noriak/.gem/ruby/1.9.1/gems/openstack-1.0.1/lib/openstack/connection.rb:436:in raise_exception': The server has either erred or is incapable of performing the requested o peration. (OpenStack::Exception::ComputeFault) from /home/noriak/.gem/ruby/1.9.1/gems/openstack-1.0.1/lib/openstack/compute/connection.rb:110:in
create_server'
from capfile/selenium:188:in block (3 levels) in load' from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/configuration/execution.rb:139:in
instance_eval'
from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/configuration/execution.rb:139:in invoke_task_directly' from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/configuration/callbacks.rb:25:in
invoke_task_directly_with_callbacks'
from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/configuration/execution.rb:89:in execute_task' from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/configuration/execution.rb:101:in
find_and_execute_task'
from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/cli/execute.rb:46:in block in execute_requested_actions' from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/cli/execute.rb:45:in
each'
from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/cli/execute.rb:45:in execute_requested_actions' from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/cli/help.rb:19:in
execute_requested_actions_with_help'
from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/cli/execute.rb:34:in execute!' from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/lib/capistrano/cli/execute.rb:14:in
execute'
from /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.12.0/bin/cap:4:in <top (required)>' from /usr/bin/cap:23:in
load'
from /usr/bin/cap:23:in `
Go this error on nova-api.log :
2012-07-20 14:01:33 ERROR nova.api.openstack [req-cf627db6-ad76-4aaa-9ff0-ea828c60efb7 b5ceffb9070443c78f9153f9d07e7791 8fddc3a384e148d6bdb8f8c70a587924] Caught error: 'int' object has no attribute 'get'
2012-07-20 14:01:33 TRACE nova.api.openstack Traceback (most recent call last):
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/nova/api/openstack/init.py", line 41, in call
2012-07-20 14:01:33 TRACE nova.api.openstack return req.get_response(self.application)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/request.py", line 1086, in get_response
2012-07-20 14:01:33 TRACE nova.api.openstack application, catch_exc_info=False)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/request.py", line 1055, in call_application
2012-07-20 14:01:33 TRACE nova.api.openstack app_iter = application(self.environ, start_response)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/keystone/middleware/auth_token.py", line 176, in call
2012-07-20 14:01:33 TRACE nova.api.openstack return self.app(env, start_response)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 159, in call
2012-07-20 14:01:33 TRACE nova.api.openstack return resp(environ, start_response)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 159, in call
2012-07-20 14:01:33 TRACE nova.api.openstack return resp(environ, start_response)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 159, in call
2012-07-20 14:01:33 TRACE nova.api.openstack return resp(environ, start_response)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/routes/middleware.py", line 131, in call
2012-07-20 14:01:33 TRACE nova.api.openstack response = self.app(environ, start_response)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 159, in call
2012-07-20 14:01:33 TRACE nova.api.openstack return resp(environ, start_response)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 147, in call
2012-07-20 14:01:33 TRACE nova.api.openstack resp = self.call_func(req, _args, *_self.kwargs)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 210, in call_func
2012-07-20 14:01:33 TRACE nova.api.openstack return self.func(req, _args, *_kwargs)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/nova/api/openstack/wsgi.py", line 803, in call
2012-07-20 14:01:33 TRACE nova.api.openstack content_type, body, accept)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/nova/api/openstack/wsgi.py", line 851, in _process_stack
2012-07-20 14:01:33 TRACE nova.api.openstack action_result = self.dispatch(meth, request, action_args)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/nova/api/openstack/wsgi.py", line 926, in dispatch
2012-07-20 14:01:33 TRACE nova.api.openstack return method(req=request, **action_args)
2012-07-20 14:01:33 TRACE nova.api.openstack File "/usr/lib/python2.7/dist-packages/nova/api/openstack/compute/servers.py", line 653, in create
2012-07-20 14:01:33 TRACE nova.api.openstack sg_names = [sg['name'] for sg in security_groups if sg.get('name')]
2012-07-20 14:01:33 TRACE nova.api.openstack AttributeError: 'int' object has no attribute 'get'
2012-07-20 14:01:33 TRACE nova.api.openstack
2012-07-20 14:01:33 INFO nova.api.openstack [req-cf627db6-ad76-4aaa-9ff0-ea828c60efb7 b5ceffb9070443c78f9153f9d07e7791 8fddc3a384e148d6bdb8f8c70a587924] http://10.87.5.230:8774/v2/8fddc3a384e148d6bdb8f8c70a587924/servers returned with HTTP 500
I'd love to be able to create users and projects -- and associations between the two -- via this gem. It could help with some of the scripting, etc., I'm trying to make happen.
Hi, I'm pretty new to OpenStack but I would like to add a piece of information into the Wiki Authentication page regarding the Other parameters for the create method:
section.
Something like that:
:region
- (Optional for v2.0 auth only). The specific service region to use. Defaults to first returned region.Or maybe something like this:
How should I proceed to contribute and what do you think about these changes?
Great gem BTW!
François
i'm attempting to perform actions after connecting. Authorization returns true, but after that, I get the following error:
C:/Ruby193/lib/ruby/gems/1.9.1/gems/openstack-2.0.2/lib/openstack/connection.rb:228:in
headerprep': uninitialized constant OpenStack::VERSION (NameError)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/openstack-2.0.2/lib/openstack/connection.rb:172:in csreq' from C:/Ruby193/lib/ruby/gems/1.9.1/gems/openstack-2.0.2/lib/openstack/connection.rb:216:in
req'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/openstack-2.0.2/lib/openstack/compute/connection.rb:278:in api_extensions' from openstackPoC.rb:13:in
Any idea what the problem is here? in auth_url, I've specified "https://my.url:5000/v2.0/
This commit: 44a421f
Deletes lib/version.rb
which defined OpenStack::VERSION
.
This is needed to set the user-agent header in connection.rb:228: https://github.com/ruby-openstack/ruby-openstack/blob/master/lib/openstack/connection.rb#L228
It looks like this commit changes the way versioning is defined, so I don' want to just add the file back in.
There is no method of specifying an SSL protocol to use, or of passing a CA file.
(pull request in the pipeline)
if response.body.nil? && response.code == "404" #HEAD ops no body returned
exception_class = self.const_get("ItemNotFound")
raise exception_class.new("The resource could not be found", "404", "")
because the response.body is not nil, so it will not raise ItemNotFound
so in the method of delete_object, can not catch the exception
We are using ruby-openstack gem to store binary files in swift openstack object storage. We have discovered that there is an inconsistency in headers structure that is used in write vs create_object methods.
In StorageObject class create_object method expects headers to be in the following form:
{ etag: 'some_value',
content_type: 'application/x-tar',
metadata: { 'X-Object-Meta-project'=>'MyContainer',
'X-Object-Meta-project_id'=>'testABC',
...}
}
this method is used when depositing new object into object storage.
However, when we updating existing object, we use write method and headers hash structure key/value pairs are expected to be all strings, so we are passing something like this:
{'etag'=>'22affe973e2175a72a11c9ecb1acc664',
'content-type'=>'application/x-tar',
'X-Object-Meta-project'=>'MyContainer',
'X-Object-Meta-project_id'=>'testABC',
....}
this is works great but it is confusing and we think it should be consistent.
There are two inconsistencies here:
Hi, I'm trying to connect to a Openstack (Devstack) server with the line:
os = OpenStack::Connection.create({
:username => "admin",
:auth_method => 'password',
:api_key => "supersecret",
:auth_url => "http://192.168.52.162/" })
And I got
URI::InvalidURIError: bad URI(is not URI?):
'
from /usr/lib/ruby/1.9.1/uri/common.rb:176:in 'split'
from /usr/lib/ruby/1.9.1/uri/common.rb:211:in 'parse'
from /usr/lib/ruby/1.9.1/uri/common.rb:747:in 'parse'
from /var/lib/gems/1.9.1/gems/openstack-1.1.2/lib/openstack/connection.rb:399:in 'initialize'
from /var/lib/gems/1.9.1/gems/openstack-1.1.2/lib/openstack/connection.rb:263:in 'new'
from /var/lib/gems/1.9.1/gems/openstack-1.1.2/lib/openstack/connection.rb:263:in 'init'
from /var/lib/gems/1.9.1/gems/openstack-1.1.2/lib/openstack/compute/connection.rb:12:in 'initialize'
from /var/lib/gems/1.9.1/gems/openstack-1.1.2/lib/openstack/connection.rb:66:in 'new'
from /var/lib/gems/1.9.1/gems/openstack-1.1.2/lib/openstack/connection.rb:66:in 'create'
from (irb):58
from /usr/bin/irb:12:in '
I think that is coming from the fact that there's no 'x-server-management-url' in the server http response and so the line:
uri = URI.parse(response["x-server-management-url"])
send an uri error but I don't know how to fix it.
I can set the user-metadata, but I cannot see how to set ACLs (read, write) with this client.
It would be great to support that...something like:
# getting
container.read_acl
#setting
container.read_acl = (foo)
# getting
container.write_acl
# setting
container.write_acl = (foo)
See the dev API docs for details: http://developer.openstack.org/api-ref-objectstorage-v1.html
Running test suite, I got following error:
failed to load: </builddir/build/BUILD/rubygem-openstack-1.0.1/usr/share/gems/gems/openstack-1.0.1/test/authentication_test.rb>: <cannot load such file -- openstack/compute> [test_require_builddir_build_BUILD_rubygem_openstack_1_0_1_usr_share_gems_gems_openstack_1_0_1_test_authentication_test_rb(RequireFailedOmissions)]
/usr/share/rubygems/rubygems/custom_require.rb:36:in `require'
Hi, would you mind to tag each release? Thank you.
As reported by Christian Karnath in Apache JIRA:
These issues were revealed by testing the Openstack 1.0.3 gem with Deltacloud - quoting Christian here:
I'm very very sorry, but I still found some new issues after excessive testing deltacloud with openstack-rubygem 1.0.3 against openstack essex, diablo and cactus. :-( I dont't know if this is the correct thread or if we should open new cases for the following issues:
fetch' /home/karnath/deltacloud/server/lib/deltacloud/drivers/openstack/openstack_driver.rb:374:in
send'convert_from_server' /home/karnath/deltacloud/server/lib/deltacloud/drivers/openstack/openstack_driver.rb:126:in
instances'collect' /home/karnath/deltacloud/server/lib/deltacloud/drivers/openstack/openstack_driver.rb:125:in
instances'call' /home/karnath/deltacloud/server/lib/deltacloud/drivers/exceptions.rb:181:in
safely'instances' /home/karnath/deltacloud/server/lib/deltacloud/helpers/deltacloud_helper.rb:60:in
send'filter_all' /usr/lib/ruby/1.8/benchmark.rb:293:in
measure'filter_all' /home/karnath/deltacloud/server/lib/deltacloud/helpers/rabbit_helper.rb:22:in
standard_index_operation'A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.