bbrowning-deltacloud-core 0.0.3.1 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,5 @@
1
+ require 'uri'
2
+
1
3
  module Sinatra
2
4
  module UrlForHelper
3
5
  # Construct a link to +url_fragment+, which should be given relative to
@@ -18,7 +20,7 @@ module Sinatra
18
20
  when :path_only
19
21
  base = request.script_name
20
22
  when :full
21
- scheme = request.scheme || 'http'
23
+ scheme = request.scheme
22
24
  if (scheme == 'http' && request.port == 80 ||
23
25
  scheme == 'https' && request.port == 443)
24
26
  port = ""
@@ -30,12 +32,13 @@ module Sinatra
30
32
  else
31
33
  raise TypeError, "Unknown url_for mode #{mode}"
32
34
  end
35
+ url_escape = URI.escape(url_fragment)
33
36
  # Don't add the base fragment if url_for gets called more than once
34
37
  # per url or the url_fragment passed in is an absolute url
35
- if url_fragment.match(/^#{base}/) or url_fragment.match(/^http/)
36
- url_fragment
38
+ if url_escape.match(/^#{base}/) or url_escape.match(/^http/)
39
+ url_escape
37
40
  else
38
- "#{base}#{url_fragment}"
41
+ "#{base}#{url_escape}"
39
42
  end
40
43
  end
41
44
 
data/server.rb CHANGED
@@ -100,7 +100,6 @@ END
100
100
  "owner_id" and "architecture" parameter
101
101
  END
102
102
  param :id, :string
103
- param :owner_id, :string
104
103
  param :architecture, :string, :optional
105
104
  control { filter_all(:images) }
106
105
  end
@@ -175,7 +174,7 @@ END
175
174
  end
176
175
 
177
176
  operation :show do
178
- description 'Show an image identified by "id" parameter.'
177
+ description 'Show an instance identified by "id" parameter.'
179
178
  param :id, :string, :required
180
179
  control { show(:instance) }
181
180
  end
@@ -300,3 +299,56 @@ collection :storage_volumes do
300
299
  control { show(:storage_volume) }
301
300
  end
302
301
  end
302
+
303
+ get '/api/keys/new' do
304
+ respond_to do |format|
305
+ format.html { haml :"keys/new" }
306
+ end
307
+ end
308
+
309
+ collection :keys do
310
+ description "Instance authentication credentials"
311
+
312
+ operation :index do
313
+ description "List all available credentials which could be used for instance authentication"
314
+ control do
315
+ filter_all :keys
316
+ end
317
+ end
318
+
319
+ operation :show do
320
+ description "Show details about given instance credential"
321
+ param :id, :string, :required
322
+ control { show :key }
323
+ end
324
+
325
+ operation :create do
326
+ description "Create a new instance credential if backend supports this"
327
+ param :name, :string, :required
328
+ control do
329
+ unless driver.respond_to?(:create_key)
330
+ raise Deltacloud::BackendFeatureUnsupported.new('501',
331
+ 'Creating instance credentials is not supported in backend')
332
+ end
333
+ @key = driver.create_key(credentials, { :key_name => params[:name] })
334
+ respond_to do |format|
335
+ format.html { haml :"keys/show" }
336
+ format.xml { haml :"keys/show" }
337
+ end
338
+ end
339
+ end
340
+
341
+ operation :destroy do
342
+ description "Destroy given instance credential if backend supports this"
343
+ param :id, :string, :required
344
+ control do
345
+ unless driver.respond_to?(:destroy_key)
346
+ raise Deltacloud::BackendFeatureUnsupported.new('501',
347
+ 'Creating instance credentials is not supported in backend')
348
+ end
349
+ driver.destroy_key(credentials, { :key_name => params[:id]})
350
+ redirect(keys_url)
351
+ end
352
+ end
353
+
354
+ end
@@ -0,0 +1,50 @@
1
+ require 'tests/common'
2
+
3
+ module DeltacloudUnitTest
4
+ class UrlForTest < Test::Unit::TestCase
5
+ include Rack::Test::Methods
6
+
7
+ def app
8
+ Sinatra::Application
9
+ end
10
+
11
+ def test_it_works_for_root
12
+ verify_url_for("/", "/")
13
+ end
14
+
15
+ def test_it_works_for_root_absolute
16
+ verify_url_for("/", "http://localhost/", :full)
17
+ end
18
+
19
+ def test_it_works_with_spaces
20
+ verify_url_for("/url with spaces", "/url%20with%20spaces")
21
+ end
22
+
23
+ def test_it_works_when_given_absolute
24
+ verify_url_for("http://test.com", "http://test.com")
25
+ end
26
+
27
+ def test_it_works_when_not_at_root_context
28
+ verify_url_for("/", "context/", :path_only, {}, {"SCRIPT_NAME" => "context"})
29
+ end
30
+
31
+ def verify_url_for(url, expected_url, mode=:path_only, params={}, rack_env={})
32
+ # generate a unique url for each test
33
+ test_url = "/url_for_test/#{expected_url.hash}/#{Time.now.to_f}"
34
+ # Create our sinatra test endpoint
35
+ self.class.create_test_url_content(test_url, url, mode)
36
+
37
+ # verify the generated url matches what we expect
38
+ get test_url, params, rack_env
39
+ last_response.body.should == expected_url
40
+ end
41
+
42
+ def self.create_test_url_content(test_url, url_content, mode)
43
+ get test_url do
44
+ content_type "text/plain"
45
+ url_for(url_content, mode)
46
+ end
47
+ end
48
+
49
+ end
50
+ end
@@ -14,4 +14,6 @@
14
14
  %dd= @error.cause
15
15
  %di
16
16
  %dt Details
17
- %dd= @error.details
17
+ %dd
18
+ %pre
19
+ =@error.details.join("\n")
@@ -22,7 +22,7 @@
22
22
  %td
23
23
  = image.name
24
24
  %td
25
- = link_to image.owner_id, images_url( :owner_id => image.owner_id )
25
+ = link_to image.owner_id, images_url
26
26
  %td
27
27
  = image.architecture
28
28
  %td
@@ -16,7 +16,7 @@
16
16
  %td
17
17
  = link_to instance.id, instance_url( instance.id )
18
18
  %td
19
- = link_to instance.owner_id, images_url( instance.owner_id )
19
+ = link_to instance.owner_id, images_url
20
20
  %td
21
21
  = instance.name
22
22
  %td
@@ -1,30 +1,39 @@
1
1
  !!! XML
2
2
  %instance{:href => instance_url(@instance.id), :id => @instance.id}
3
- %name<
4
- =@instance.name
5
- %owner_id<
6
- =@instance.owner_id
7
- %image{:href => image_url(@instance.image_id), :id => @instance.image_id }
8
- %realm{:href => realm_url(@instance.realm_id), :id => @instance.realm_id }
9
- %state<
10
- =@instance.state
11
- - haml_tag :"hardware_profile", {:id => @instance.instance_profile.id, :href => hardware_profile_url(@instance.instance_profile.id)} do
12
- - @instance.instance_profile.overrides.each do |p, v|
13
- %property{:kind => 'fixed', :name => p, :value => v, :unit => Deltacloud::HardwareProfile::unit(p)}
14
- %actions
15
- - @instance.actions.compact.each do |instance_action|
16
- %link{:rel => instance_action, :method => instance_action_method(instance_action), :href => self.send("#{instance_action}_instance_url", @instance.id)}
3
+ - if @instance.name
4
+ %name<
5
+ =@instance.name
6
+ - if @instance.owner_id
7
+ %owner_id<
8
+ =@instance.owner_id
9
+ - if @instance.image_id
10
+ %image{:href => image_url(@instance.image_id), :id => @instance.image_id }
11
+ - if @instance.realm_id
12
+ %realm{:href => realm_url(@instance.realm_id), :id => @instance.realm_id }
13
+ - if @instance.state
14
+ %state<
15
+ =@instance.state
16
+ - if @instance.instance_profile
17
+ - haml_tag :"hardware_profile", {:id => @instance.instance_profile.id, :href => hardware_profile_url(@instance.instance_profile.id)} do
18
+ - @instance.instance_profile.overrides.each do |p, v|
19
+ %property{:kind => 'fixed', :name => p, :value => v, :unit => Deltacloud::HardwareProfile::unit(p)}
20
+ - if @instance.actions
21
+ %actions
22
+ - @instance.actions.compact.each do |instance_action|
23
+ %link{:rel => instance_action, :method => instance_action_method(instance_action), :href => self.send("#{instance_action}_instance_url", @instance.id)}
17
24
  - if @instance.instance_variables.include?("@launch_time")
18
25
  %launch_time<
19
26
  =@instance.launch_time
20
- %public_addresses
21
- - @instance.public_addresses.each do |address|
22
- %address<
23
- =address
24
- %private_addresses
25
- - @instance.private_addresses.each do |address|
26
- %address<
27
- =address
27
+ - if @instance.public_addresses
28
+ %public_addresses
29
+ - @instance.public_addresses.each do |address|
30
+ %address<
31
+ =address
32
+ - if @instance.private_addresses
33
+ %private_addresses
34
+ - @instance.private_addresses.each do |address|
35
+ %address<
36
+ =address
28
37
  - if driver_has_auth_features?
29
38
  %authentication{ :type => driver_auth_feature_name }
30
39
  - if @instance.authn_feature_failed?
@@ -0,0 +1,26 @@
1
+ %h1 Keys
2
+
3
+ %table.display
4
+ %thead
5
+ %tr
6
+ %th ID
7
+ %th Credentials details
8
+ %th Actions
9
+ %tbody
10
+ - @elements.each do |key|
11
+ %tr
12
+ %td
13
+ = link_to key.id, key_url( key.id )
14
+ %td
15
+ - if key.credential_type.eql?(:key)
16
+ = key.fingerprint
17
+ - if key.credential_type.eql?(:password)
18
+ = "#{key.username} - #{key.password}"
19
+ %td
20
+ - if driver.respond_to?(:destroy_key)
21
+ =link_to 'Destroy', destroy_key_url(key.id), :class => 'delete'
22
+ %tfoot
23
+ - if driver.respond_to?(:create_key)
24
+ %tr
25
+ %td{:colspan => 3, :style => "text-align:right;"}
26
+ =link_to 'Create &raquo;', "#{url_for('/api/keys/new')}", :class => 'button'
@@ -0,0 +1,4 @@
1
+ !!!XML
2
+ %keys
3
+ - @elements.each do |c|
4
+ = haml :'keys/show', :locals => { :@key => c, :partial => true }
@@ -0,0 +1,8 @@
1
+ %h1 New key
2
+
3
+ %form{ :action => '/api/keys', :method => :post }
4
+ %p
5
+ %label
6
+ Name:
7
+ %input{ :name => 'name', :size => 30 }/
8
+ %input{ :type => :submit, :name => "commit", :value => "create" }/
@@ -0,0 +1,22 @@
1
+ %h1
2
+ = @key.id
3
+
4
+ %dl
5
+ - if @key.is_key?
6
+ %di
7
+ %dt Fingerprint
8
+ %dd
9
+ = @key.fingerprint
10
+ - if @key.pem_rsa_key
11
+ %dt PEM key
12
+ %dd
13
+ %pre
14
+ = @key.pem_rsa_key
15
+ - if @key.is_password?
16
+ %di
17
+ %dt Username
18
+ %dd
19
+ = @key.username
20
+ %dt Password
21
+ %dd
22
+ = @key.password
@@ -0,0 +1,20 @@
1
+ - unless defined?(partial)
2
+ !!! XML
3
+ %key{ :href => key_url(@key.id), :id => @key.id, :type => "#{@key.credential_type}" }
4
+ %actions
5
+ - if driver.respond_to?(:destroy_key)
6
+ %link{ :rel => "destroy", :method => "delete", :href => destroy_key_url(@key.id)}
7
+ - if @key.is_key?
8
+ %fingerprint<
9
+ =@key.fingerprint
10
+ - unless @key.pem_rsa_key.nil?
11
+ %pem<
12
+ =cdata do
13
+ =@key.pem_rsa_key
14
+ - if @key.is_password?
15
+ %username<
16
+ =cdata do
17
+ =@key.username
18
+ %password<
19
+ =cdata do
20
+ =@key.password
metadata CHANGED
@@ -1,319 +1,339 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bbrowning-deltacloud-core
3
3
  version: !ruby/object:Gem::Version
4
- hash: 65
5
4
  prerelease: false
6
5
  segments:
7
- - 0
8
- - 0
9
- - 3
10
- - 1
11
- version: 0.0.3.1
6
+ - 0
7
+ - 0
8
+ - 4
9
+ version: 0.0.4
12
10
  platform: ruby
13
11
  authors:
14
- - Red Hat, Inc.
12
+ - Red Hat, Inc.
15
13
  autorequire:
16
14
  bindir: bin
17
15
  cert_chain: []
18
16
 
19
- date: 2010-07-25 00:00:00 -04:00
17
+ date: 2010-09-01 00:00:00 -04:00
20
18
  default_executable:
21
19
  dependencies:
22
- - !ruby/object:Gem::Dependency
23
- name: rake
24
- prerelease: false
25
- requirement: &id001 !ruby/object:Gem::Requirement
26
- none: false
27
- requirements:
28
- - - ">="
29
- - !ruby/object:Gem::Version
30
- hash: 49
31
- segments:
32
- - 0
33
- - 8
34
- - 7
35
- version: 0.8.7
36
- type: :runtime
37
- version_requirements: *id001
38
- - !ruby/object:Gem::Dependency
39
- name: haml
40
- prerelease: false
41
- requirement: &id002 !ruby/object:Gem::Requirement
42
- none: false
43
- requirements:
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- hash: 37
47
- segments:
48
- - 2
49
- - 2
50
- - 17
51
- version: 2.2.17
52
- type: :runtime
53
- version_requirements: *id002
54
- - !ruby/object:Gem::Dependency
55
- name: sinatra
56
- prerelease: false
57
- requirement: &id003 !ruby/object:Gem::Requirement
58
- none: false
59
- requirements:
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- hash: 51
63
- segments:
64
- - 0
65
- - 9
66
- - 4
67
- version: 0.9.4
68
- type: :runtime
69
- version_requirements: *id003
70
- - !ruby/object:Gem::Dependency
71
- name: rack
72
- prerelease: false
73
- requirement: &id004 !ruby/object:Gem::Requirement
74
- none: false
75
- requirements:
76
- - - ">="
77
- - !ruby/object:Gem::Version
78
- hash: 23
79
- segments:
80
- - 1
81
- - 0
82
- - 0
83
- version: 1.0.0
84
- type: :runtime
85
- version_requirements: *id004
86
- - !ruby/object:Gem::Dependency
87
- name: json_pure
88
- prerelease: false
89
- requirement: &id005 !ruby/object:Gem::Requirement
90
- none: false
91
- requirements:
92
- - - ">="
93
- - !ruby/object:Gem::Version
94
- hash: 25
95
- segments:
96
- - 1
97
- - 2
98
- - 3
99
- version: 1.2.3
100
- type: :runtime
101
- version_requirements: *id005
102
- - !ruby/object:Gem::Dependency
103
- name: compass
104
- prerelease: false
105
- requirement: &id006 !ruby/object:Gem::Requirement
106
- none: false
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- hash: 29
111
- segments:
112
- - 0
113
- - 8
114
- - 17
115
- version: 0.8.17
116
- type: :development
117
- version_requirements: *id006
118
- - !ruby/object:Gem::Dependency
119
- name: nokogiri
120
- prerelease: false
121
- requirement: &id007 !ruby/object:Gem::Requirement
122
- none: false
123
- requirements:
124
- - - ">="
125
- - !ruby/object:Gem::Version
126
- hash: 5
127
- segments:
128
- - 1
129
- - 4
130
- - 1
131
- version: 1.4.1
132
- type: :development
133
- version_requirements: *id007
134
- - !ruby/object:Gem::Dependency
135
- name: rack-test
136
- prerelease: false
137
- requirement: &id008 !ruby/object:Gem::Requirement
138
- none: false
139
- requirements:
140
- - - ">="
141
- - !ruby/object:Gem::Version
142
- hash: 13
143
- segments:
144
- - 0
145
- - 5
146
- - 3
147
- version: 0.5.3
148
- type: :development
149
- version_requirements: *id008
150
- - !ruby/object:Gem::Dependency
151
- name: cucumber
152
- prerelease: false
153
- requirement: &id009 !ruby/object:Gem::Requirement
154
- none: false
155
- requirements:
156
- - - ">="
157
- - !ruby/object:Gem::Version
158
- hash: 1
159
- segments:
160
- - 0
161
- - 6
162
- - 3
163
- version: 0.6.3
164
- type: :development
165
- version_requirements: *id009
166
- - !ruby/object:Gem::Dependency
167
- name: rcov
168
- prerelease: false
169
- requirement: &id010 !ruby/object:Gem::Requirement
170
- none: false
171
- requirements:
172
- - - ">="
173
- - !ruby/object:Gem::Version
174
- hash: 43
175
- segments:
176
- - 0
177
- - 9
178
- - 8
179
- version: 0.9.8
180
- type: :development
181
- version_requirements: *id010
20
+ - !ruby/object:Gem::Dependency
21
+ name: rake
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
29
+ - 8
30
+ - 7
31
+ version: 0.8.7
32
+ type: :runtime
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: eventmachine
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ segments:
42
+ - 0
43
+ - 12
44
+ - 10
45
+ version: 0.12.10
46
+ type: :runtime
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: haml
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ segments:
56
+ - 2
57
+ - 2
58
+ - 17
59
+ version: 2.2.17
60
+ type: :runtime
61
+ version_requirements: *id003
62
+ - !ruby/object:Gem::Dependency
63
+ name: sinatra
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ segments:
70
+ - 0
71
+ - 9
72
+ - 4
73
+ version: 0.9.4
74
+ type: :runtime
75
+ version_requirements: *id004
76
+ - !ruby/object:Gem::Dependency
77
+ name: rack
78
+ prerelease: false
79
+ requirement: &id005 !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ segments:
84
+ - 1
85
+ - 0
86
+ - 0
87
+ version: 1.0.0
88
+ type: :runtime
89
+ version_requirements: *id005
90
+ - !ruby/object:Gem::Dependency
91
+ name: thin
92
+ prerelease: false
93
+ requirement: &id006 !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ segments:
98
+ - 1
99
+ - 2
100
+ - 5
101
+ version: 1.2.5
102
+ type: :runtime
103
+ version_requirements: *id006
104
+ - !ruby/object:Gem::Dependency
105
+ name: rerun
106
+ prerelease: false
107
+ requirement: &id007 !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ segments:
112
+ - 0
113
+ - 5
114
+ - 2
115
+ version: 0.5.2
116
+ type: :runtime
117
+ version_requirements: *id007
118
+ - !ruby/object:Gem::Dependency
119
+ name: json
120
+ prerelease: false
121
+ requirement: &id008 !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ segments:
126
+ - 1
127
+ - 4
128
+ - 3
129
+ version: 1.4.3
130
+ type: :runtime
131
+ version_requirements: *id008
132
+ - !ruby/object:Gem::Dependency
133
+ name: compass
134
+ prerelease: false
135
+ requirement: &id009 !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ segments:
140
+ - 0
141
+ - 8
142
+ - 17
143
+ version: 0.8.17
144
+ type: :development
145
+ version_requirements: *id009
146
+ - !ruby/object:Gem::Dependency
147
+ name: nokogiri
148
+ prerelease: false
149
+ requirement: &id010 !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ segments:
154
+ - 1
155
+ - 4
156
+ - 1
157
+ version: 1.4.1
158
+ type: :development
159
+ version_requirements: *id010
160
+ - !ruby/object:Gem::Dependency
161
+ name: rack-test
162
+ prerelease: false
163
+ requirement: &id011 !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ segments:
168
+ - 0
169
+ - 5
170
+ - 3
171
+ version: 0.5.3
172
+ type: :development
173
+ version_requirements: *id011
174
+ - !ruby/object:Gem::Dependency
175
+ name: cucumber
176
+ prerelease: false
177
+ requirement: &id012 !ruby/object:Gem::Requirement
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ segments:
182
+ - 0
183
+ - 6
184
+ - 3
185
+ version: 0.6.3
186
+ type: :development
187
+ version_requirements: *id012
188
+ - !ruby/object:Gem::Dependency
189
+ name: rcov
190
+ prerelease: false
191
+ requirement: &id013 !ruby/object:Gem::Requirement
192
+ requirements:
193
+ - - ">="
194
+ - !ruby/object:Gem::Version
195
+ segments:
196
+ - 0
197
+ - 9
198
+ - 8
199
+ version: 0.9.8
200
+ type: :development
201
+ version_requirements: *id013
182
202
  description: " The Deltacloud API is built as a service-based REST API.\n You do not directly link a Deltacloud library into your program to use it.\n Instead, a client speaks the Deltacloud API over HTTP to a server\n which implements the REST interface.\n"
183
203
  email: deltacloud-users@lists.fedorahosted.org
184
204
  executables:
185
- - deltacloudd
205
+ - deltacloudd
186
206
  extensions: []
187
207
 
188
208
  extra_rdoc_files:
189
- - COPYING
209
+ - COPYING
190
210
  files:
191
- - Rakefile
192
- - config.ru
193
- - server.rb
194
- - deltacloud.rb
195
- - support/fedora/rubygem-deltacloud-core.spec
196
- - support/fedora/deltacloudd
197
- - support/torquebox/torquebox-ec2-config.ru
198
- - lib/sinatra/rabbit.rb
199
- - lib/sinatra/respond_to.rb
200
- - lib/sinatra/lazy_auth.rb
201
- - lib/sinatra/accept_media_types.rb
202
- - lib/sinatra/url_for.rb
203
- - lib/sinatra/static_assets.rb
204
- - lib/deltacloud/validation.rb
205
- - lib/deltacloud/method_serializer.rb
206
- - lib/deltacloud/state_machine.rb
207
- - lib/deltacloud/hardware_profile.rb
208
- - lib/deltacloud/helpers.rb
209
- - lib/deltacloud/base_driver.rb
210
- - lib/deltacloud/helpers/conversion_helper.rb
211
- - lib/deltacloud/helpers/hardware_profiles_helper.rb
212
- - lib/deltacloud/helpers/application_helper.rb
213
- - lib/deltacloud/base_driver/features.rb
214
- - lib/deltacloud/base_driver/base_driver.rb
215
- - lib/deltacloud/base_driver/mock_driver.rb
216
- - lib/deltacloud/drivers/opennebula/occi_client.rb
217
- - lib/deltacloud/drivers/opennebula/cloud_client.rb
218
- - lib/deltacloud/drivers/opennebula/opennebula_driver.rb
219
- - lib/deltacloud/drivers/rimuhosting/rimuhosting_client.rb
220
- - lib/deltacloud/drivers/rimuhosting/rimuhosting_driver.rb
221
- - lib/deltacloud/drivers/rhevm/rhevm_driver.rb
222
- - lib/deltacloud/drivers/terremark/terremark_driver.rb
223
- - lib/deltacloud/drivers/rackspace/rackspace_driver.rb
224
- - lib/deltacloud/drivers/rackspace/rackspace_client.rb
225
- - lib/deltacloud/drivers/ec2/ec2_driver.rb
226
- - lib/deltacloud/drivers/ec2/ec2_mock_driver.rb
227
- - lib/deltacloud/drivers/gogrid/gogrid_driver.rb
228
- - lib/deltacloud/drivers/gogrid/gogrid_client.rb
229
- - lib/deltacloud/drivers/mock/mock_driver.rb
230
- - lib/deltacloud/models/realm.rb
231
- - lib/deltacloud/models/image.rb
232
- - lib/deltacloud/models/storage_snapshot.rb
233
- - lib/deltacloud/models/storage_volume.rb
234
- - lib/deltacloud/models/base_model.rb
235
- - lib/deltacloud/models/instance_profile.rb
236
- - lib/deltacloud/models/instance.rb
237
- - lib/drivers.rb
238
- - lib/deltacloud/drivers/mock/data/instances/inst1.yml
239
- - lib/deltacloud/drivers/mock/data/instances/inst2.yml
240
- - lib/deltacloud/drivers/mock/data/instances/inst0.yml
241
- - lib/deltacloud/drivers/mock/data/storage_volumes/vol1.yml
242
- - lib/deltacloud/drivers/mock/data/storage_volumes/vol3.yml
243
- - lib/deltacloud/drivers/mock/data/storage_volumes/vol2.yml
244
- - lib/deltacloud/drivers/mock/data/storage_snapshots/snap3.yml
245
- - lib/deltacloud/drivers/mock/data/storage_snapshots/snap1.yml
246
- - lib/deltacloud/drivers/mock/data/storage_snapshots/snap2.yml
247
- - lib/deltacloud/drivers/mock/data/images/img2.yml
248
- - lib/deltacloud/drivers/mock/data/images/img1.yml
249
- - lib/deltacloud/drivers/mock/data/images/img3.yml
250
- - views/instances/new.html.haml
251
- - views/instances/show.html.haml
252
- - views/instances/index.html.haml
253
- - views/instances/show.xml.haml
254
- - views/instances/index.xml.haml
255
- - views/hardware_profiles/show.html.haml
256
- - views/hardware_profiles/index.html.haml
257
- - views/hardware_profiles/show.xml.haml
258
- - views/hardware_profiles/index.xml.haml
259
- - views/root/index.html.haml
260
- - views/api/show.html.haml
261
- - views/api/show.xml.haml
262
- - views/errors/auth_exception.html.haml
263
- - views/errors/auth_exception.xml.haml
264
- - views/errors/not_found.xml.haml
265
- - views/errors/not_found.html.haml
266
- - views/errors/backend_error.xml.haml
267
- - views/errors/validation_failure.xml.haml
268
- - views/errors/validation_failure.html.haml
269
- - views/errors/backend_error.html.haml
270
- - views/docs/collection.xml.haml
271
- - views/docs/collection.html.haml
272
- - views/docs/operation.html.haml
273
- - views/docs/index.html.haml
274
- - views/docs/operation.xml.haml
275
- - views/docs/index.xml.haml
276
- - views/realms/show.html.haml
277
- - views/realms/index.html.haml
278
- - views/realms/show.xml.haml
279
- - views/realms/index.xml.haml
280
- - views/layout.html.haml
281
- - views/instance_states/show.html.haml
282
- - views/instance_states/show.xml.haml
283
- - views/storage_volumes/show.html.haml
284
- - views/storage_volumes/index.html.haml
285
- - views/storage_volumes/show.xml.haml
286
- - views/storage_volumes/index.xml.haml
287
- - views/accounts/show.html.haml
288
- - views/accounts/index.html.haml
289
- - views/storage_snapshots/show.html.haml
290
- - views/storage_snapshots/index.html.haml
291
- - views/storage_snapshots/show.xml.haml
292
- - views/storage_snapshots/index.xml.haml
293
- - views/images/show.html.haml
294
- - views/images/index.html.haml
295
- - views/images/show.xml.haml
296
- - views/images/index.xml.haml
297
- - views/instance_states/show.gv.erb
298
- - public/favicon.ico
299
- - public/images/logo-wide.png
300
- - public/images/topbar-bg.png
301
- - public/images/rails.png
302
- - public/images/grid.png
303
- - public/javascripts/application.js
304
- - public/javascripts/jquery-1.4.2.min.js
305
- - public/stylesheets/compiled/ie.css
306
- - public/stylesheets/compiled/print.css
307
- - public/stylesheets/compiled/screen.css
308
- - public/stylesheets/compiled/application.css
309
- - bin/deltacloudd
310
- - COPYING
311
- - tests/realms_test.rb
312
- - tests/hardware_profiles_test.rb
313
- - tests/instances_test.rb
314
- - tests/instance_states_test.rb
315
- - tests/images_test.rb
316
- - tests/api_test.rb
211
+ - Rakefile
212
+ - config.ru
213
+ - deltacloud.rb
214
+ - server.rb
215
+ - support/fedora/deltacloudd
216
+ - support/fedora/rubygem-deltacloud-core.spec
217
+ - lib/drivers.rb
218
+ - lib/deltacloud/base_driver.rb
219
+ - lib/deltacloud/hardware_profile.rb
220
+ - lib/deltacloud/helpers.rb
221
+ - lib/deltacloud/method_serializer.rb
222
+ - lib/deltacloud/state_machine.rb
223
+ - lib/deltacloud/validation.rb
224
+ - lib/deltacloud/base_driver/base_driver.rb
225
+ - lib/deltacloud/base_driver/features.rb
226
+ - lib/deltacloud/base_driver/mock_driver.rb
227
+ - lib/deltacloud/drivers/ec2/ec2_driver.rb
228
+ - lib/deltacloud/drivers/ec2/ec2_mock_driver.rb
229
+ - lib/deltacloud/drivers/gogrid/gogrid_client.rb
230
+ - lib/deltacloud/drivers/gogrid/gogrid_driver.rb
231
+ - lib/deltacloud/drivers/gogrid/test.rb
232
+ - lib/deltacloud/drivers/mock/mock_driver.rb
233
+ - lib/deltacloud/drivers/opennebula/cloud_client.rb
234
+ - lib/deltacloud/drivers/opennebula/occi_client.rb
235
+ - lib/deltacloud/drivers/opennebula/opennebula_driver.rb
236
+ - lib/deltacloud/drivers/rackspace/rackspace_client.rb
237
+ - lib/deltacloud/drivers/rackspace/rackspace_driver.rb
238
+ - lib/deltacloud/drivers/rhevm/rhevm_driver.rb
239
+ - lib/deltacloud/drivers/rimuhosting/rimuhosting_client.rb
240
+ - lib/deltacloud/drivers/rimuhosting/rimuhosting_driver.rb
241
+ - lib/deltacloud/drivers/terremark/terremark_driver.rb
242
+ - lib/deltacloud/helpers/application_helper.rb
243
+ - lib/deltacloud/helpers/conversion_helper.rb
244
+ - lib/deltacloud/helpers/hardware_profiles_helper.rb
245
+ - lib/deltacloud/models/base_model.rb
246
+ - lib/deltacloud/models/image.rb
247
+ - lib/deltacloud/models/instance.rb
248
+ - lib/deltacloud/models/instance_profile.rb
249
+ - lib/deltacloud/models/key.rb
250
+ - lib/deltacloud/models/realm.rb
251
+ - lib/deltacloud/models/storage_snapshot.rb
252
+ - lib/deltacloud/models/storage_volume.rb
253
+ - lib/sinatra/accept_media_types.rb
254
+ - lib/sinatra/lazy_auth.rb
255
+ - lib/sinatra/rabbit.rb
256
+ - lib/sinatra/respond_to.rb
257
+ - lib/sinatra/static_assets.rb
258
+ - lib/sinatra/url_for.rb
259
+ - lib/deltacloud/drivers/mock/data/images/img1.yml
260
+ - lib/deltacloud/drivers/mock/data/images/img2.yml
261
+ - lib/deltacloud/drivers/mock/data/images/img3.yml
262
+ - lib/deltacloud/drivers/mock/data/instances/inst0.yml
263
+ - lib/deltacloud/drivers/mock/data/instances/inst1.yml
264
+ - lib/deltacloud/drivers/mock/data/instances/inst2.yml
265
+ - lib/deltacloud/drivers/mock/data/storage_snapshots/snap1.yml
266
+ - lib/deltacloud/drivers/mock/data/storage_snapshots/snap2.yml
267
+ - lib/deltacloud/drivers/mock/data/storage_snapshots/snap3.yml
268
+ - lib/deltacloud/drivers/mock/data/storage_volumes/vol1.yml
269
+ - lib/deltacloud/drivers/mock/data/storage_volumes/vol2.yml
270
+ - lib/deltacloud/drivers/mock/data/storage_volumes/vol3.yml
271
+ - views/layout.html.haml
272
+ - views/accounts/index.html.haml
273
+ - views/accounts/show.html.haml
274
+ - views/api/show.html.haml
275
+ - views/api/show.xml.haml
276
+ - views/docs/collection.html.haml
277
+ - views/docs/collection.xml.haml
278
+ - views/docs/index.html.haml
279
+ - views/docs/index.xml.haml
280
+ - views/docs/operation.html.haml
281
+ - views/docs/operation.xml.haml
282
+ - views/errors/auth_exception.html.haml
283
+ - views/errors/auth_exception.xml.haml
284
+ - views/errors/backend_error.html.haml
285
+ - views/errors/backend_error.xml.haml
286
+ - views/errors/not_found.html.haml
287
+ - views/errors/not_found.xml.haml
288
+ - views/errors/validation_failure.html.haml
289
+ - views/errors/validation_failure.xml.haml
290
+ - views/hardware_profiles/index.html.haml
291
+ - views/hardware_profiles/index.xml.haml
292
+ - views/hardware_profiles/show.html.haml
293
+ - views/hardware_profiles/show.xml.haml
294
+ - views/images/index.html.haml
295
+ - views/images/index.xml.haml
296
+ - views/images/show.html.haml
297
+ - views/images/show.xml.haml
298
+ - views/instance_states/show.html.haml
299
+ - views/instance_states/show.xml.haml
300
+ - views/instances/index.html.haml
301
+ - views/instances/index.xml.haml
302
+ - views/instances/new.html.haml
303
+ - views/instances/show.html.haml
304
+ - views/instances/show.xml.haml
305
+ - views/keys/index.html.haml
306
+ - views/keys/index.xml.haml
307
+ - views/keys/new.html.haml
308
+ - views/keys/show.html.haml
309
+ - views/keys/show.xml.haml
310
+ - views/realms/index.html.haml
311
+ - views/realms/index.xml.haml
312
+ - views/realms/show.html.haml
313
+ - views/realms/show.xml.haml
314
+ - views/root/index.html.haml
315
+ - views/storage_snapshots/index.html.haml
316
+ - views/storage_snapshots/index.xml.haml
317
+ - views/storage_snapshots/show.html.haml
318
+ - views/storage_snapshots/show.xml.haml
319
+ - views/storage_volumes/index.html.haml
320
+ - views/storage_volumes/index.xml.haml
321
+ - views/storage_volumes/show.html.haml
322
+ - views/storage_volumes/show.xml.haml
323
+ - views/instance_states/show.gv.erb
324
+ - public/favicon.ico
325
+ - public/images/grid.png
326
+ - public/images/logo-wide.png
327
+ - public/images/rails.png
328
+ - public/images/topbar-bg.png
329
+ - public/javascripts/application.js
330
+ - public/javascripts/jquery-1.4.2.min.js
331
+ - public/stylesheets/compiled/application.css
332
+ - public/stylesheets/compiled/ie.css
333
+ - public/stylesheets/compiled/print.css
334
+ - public/stylesheets/compiled/screen.css
335
+ - bin/deltacloudd
336
+ - COPYING
317
337
  has_rdoc: true
318
338
  homepage: http://www.deltacloud.org
319
339
  licenses: []
@@ -322,38 +342,35 @@ post_install_message:
322
342
  rdoc_options: []
323
343
 
324
344
  require_paths:
325
- - lib
345
+ - lib
326
346
  required_ruby_version: !ruby/object:Gem::Requirement
327
- none: false
328
347
  requirements:
329
- - - ">="
330
- - !ruby/object:Gem::Version
331
- hash: 53
332
- segments:
333
- - 1
334
- - 8
335
- - 1
336
- version: 1.8.1
348
+ - - ">="
349
+ - !ruby/object:Gem::Version
350
+ segments:
351
+ - 1
352
+ - 8
353
+ - 1
354
+ version: 1.8.1
337
355
  required_rubygems_version: !ruby/object:Gem::Requirement
338
- none: false
339
356
  requirements:
340
- - - ">="
341
- - !ruby/object:Gem::Version
342
- hash: 3
343
- segments:
344
- - 0
345
- version: "0"
357
+ - - ">="
358
+ - !ruby/object:Gem::Version
359
+ segments:
360
+ - 0
361
+ version: "0"
346
362
  requirements: []
347
363
 
348
364
  rubyforge_project:
349
- rubygems_version: 1.3.7
365
+ rubygems_version: 1.3.6
350
366
  signing_key:
351
367
  specification_version: 3
352
368
  summary: Deltacloud REST API
353
369
  test_files:
354
- - tests/realms_test.rb
355
- - tests/hardware_profiles_test.rb
356
- - tests/instances_test.rb
357
- - tests/instance_states_test.rb
358
- - tests/images_test.rb
359
- - tests/api_test.rb
370
+ - tests/api_test.rb
371
+ - tests/hardware_profiles_test.rb
372
+ - tests/images_test.rb
373
+ - tests/instance_states_test.rb
374
+ - tests/instances_test.rb
375
+ - tests/realms_test.rb
376
+ - tests/url_for_test.rb