fog 0.3.17 → 0.3.18

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.
Files changed (180) hide show
  1. data/Gemfile.lock +5 -5
  2. data/README.rdoc +16 -7
  3. data/fog.gemspec +102 -27
  4. data/lib/fog.rb +3 -2
  5. data/lib/fog/aws/cdn.rb +2 -1
  6. data/lib/fog/aws/compute.rb +3 -2
  7. data/lib/fog/aws/iam.rb +8 -0
  8. data/lib/fog/aws/models/compute/flavors.rb +2 -1
  9. data/lib/fog/aws/models/compute/server.rb +3 -0
  10. data/lib/fog/aws/models/compute/volume.rb +9 -8
  11. data/lib/fog/aws/models/storage/file.rb +24 -14
  12. data/lib/fog/aws/models/storage/files.rb +4 -14
  13. data/lib/fog/aws/parsers/cdn/distribution.rb +16 -1
  14. data/lib/fog/aws/parsers/cdn/get_distribution_list.rb +13 -0
  15. data/lib/fog/aws/parsers/compute/describe_volumes.rb +2 -0
  16. data/lib/fog/aws/parsers/iam/create_group.rb +2 -2
  17. data/lib/fog/aws/parsers/iam/create_user.rb +26 -0
  18. data/lib/fog/aws/parsers/iam/list_group_policies.rb +28 -0
  19. data/lib/fog/aws/parsers/iam/list_groups.rb +1 -1
  20. data/lib/fog/aws/parsers/storage/complete_multipart_upload.rb +24 -0
  21. data/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb +24 -0
  22. data/lib/fog/aws/parsers/storage/list_multipart_uploads.rb +56 -0
  23. data/lib/fog/aws/parsers/storage/list_parts.rb +40 -0
  24. data/lib/fog/aws/requests/cdn/get_distribution.rb +11 -1
  25. data/lib/fog/aws/requests/cdn/get_distribution_list.rb +9 -1
  26. data/lib/fog/aws/requests/cdn/post_distribution.rb +16 -5
  27. data/lib/fog/aws/requests/cdn/put_distribution_config.rb +102 -0
  28. data/lib/fog/aws/requests/compute/describe_volumes.rb +1 -0
  29. data/lib/fog/aws/requests/compute/run_instances.rb +1 -1
  30. data/lib/fog/aws/requests/iam/add_user_to_group.rb +42 -0
  31. data/lib/fog/aws/requests/iam/create_group.rb +7 -3
  32. data/lib/fog/aws/requests/iam/create_user.rb +47 -0
  33. data/lib/fog/aws/requests/iam/delete_group.rb +5 -1
  34. data/lib/fog/aws/requests/iam/delete_group_policy.rb +42 -0
  35. data/lib/fog/aws/requests/iam/delete_user.rb +40 -0
  36. data/lib/fog/aws/requests/iam/list_group_policies.rb +47 -0
  37. data/lib/fog/aws/requests/iam/list_groups.rb +9 -4
  38. data/lib/fog/aws/requests/iam/put_group_policy.rb +44 -0
  39. data/lib/fog/aws/requests/iam/remove_user_from_group.rb +42 -0
  40. data/lib/fog/aws/requests/simpledb/put_attributes.rb +2 -2
  41. data/lib/fog/aws/requests/storage/abort_multipart_upload.rb +38 -0
  42. data/lib/fog/aws/requests/storage/complete_multipart_upload.rb +60 -0
  43. data/lib/fog/aws/requests/storage/get_service.rb +1 -1
  44. data/lib/fog/aws/requests/storage/initiate_multipart_upload.rb +55 -0
  45. data/lib/fog/aws/requests/storage/list_multipart_uploads.rb +68 -0
  46. data/lib/fog/aws/requests/storage/list_parts.rb +67 -0
  47. data/lib/fog/aws/requests/storage/put_object.rb +12 -5
  48. data/lib/fog/aws/requests/storage/upload_part.rb +51 -0
  49. data/lib/fog/aws/storage.rb +12 -6
  50. data/lib/fog/brightbox.rb +7 -0
  51. data/lib/fog/brightbox/bin.rb +23 -0
  52. data/lib/fog/brightbox/compute.rb +134 -0
  53. data/lib/fog/brightbox/models/compute/account.rb +51 -0
  54. data/lib/fog/brightbox/models/compute/cloud_ip.rb +43 -0
  55. data/lib/fog/brightbox/models/compute/cloud_ips.rb +34 -0
  56. data/lib/fog/brightbox/models/compute/flavor.rb +33 -0
  57. data/lib/fog/brightbox/models/compute/flavors.rb +28 -0
  58. data/lib/fog/brightbox/models/compute/image.rb +52 -0
  59. data/lib/fog/brightbox/models/compute/images.rb +28 -0
  60. data/lib/fog/brightbox/models/compute/server.rb +94 -0
  61. data/lib/fog/brightbox/models/compute/servers.rb +29 -0
  62. data/lib/fog/brightbox/models/compute/user.rb +39 -0
  63. data/lib/fog/brightbox/models/compute/users.rb +29 -0
  64. data/lib/fog/brightbox/models/compute/zone.rb +21 -0
  65. data/lib/fog/brightbox/models/compute/zones.rb +29 -0
  66. data/lib/fog/brightbox/requests/compute/create_api_client.rb +27 -0
  67. data/lib/fog/brightbox/requests/compute/create_cloud_ip.rb +27 -0
  68. data/lib/fog/brightbox/requests/compute/create_image.rb +27 -0
  69. data/lib/fog/brightbox/requests/compute/create_server.rb +27 -0
  70. data/lib/fog/brightbox/requests/compute/destroy_api_client.rb +28 -0
  71. data/lib/fog/brightbox/requests/compute/destroy_cloud_ip.rb +28 -0
  72. data/lib/fog/brightbox/requests/compute/destroy_image.rb +28 -0
  73. data/lib/fog/brightbox/requests/compute/destroy_server.rb +28 -0
  74. data/lib/fog/brightbox/requests/compute/get_account.rb +27 -0
  75. data/lib/fog/brightbox/requests/compute/get_api_client.rb +28 -0
  76. data/lib/fog/brightbox/requests/compute/get_cloud_ip.rb +28 -0
  77. data/lib/fog/brightbox/requests/compute/get_image.rb +28 -0
  78. data/lib/fog/brightbox/requests/compute/get_interface.rb +28 -0
  79. data/lib/fog/brightbox/requests/compute/get_server.rb +28 -0
  80. data/lib/fog/brightbox/requests/compute/get_server_type.rb +28 -0
  81. data/lib/fog/brightbox/requests/compute/get_user.rb +28 -0
  82. data/lib/fog/brightbox/requests/compute/get_zone.rb +28 -0
  83. data/lib/fog/brightbox/requests/compute/list_api_clients.rb +27 -0
  84. data/lib/fog/brightbox/requests/compute/list_cloud_ips.rb +27 -0
  85. data/lib/fog/brightbox/requests/compute/list_images.rb +27 -0
  86. data/lib/fog/brightbox/requests/compute/list_server_types.rb +27 -0
  87. data/lib/fog/brightbox/requests/compute/list_servers.rb +27 -0
  88. data/lib/fog/brightbox/requests/compute/list_users.rb +27 -0
  89. data/lib/fog/brightbox/requests/compute/list_zones.rb +27 -0
  90. data/lib/fog/brightbox/requests/compute/map_cloud_ip.rb +28 -0
  91. data/lib/fog/brightbox/requests/compute/reset_ftp_password_account.rb +27 -0
  92. data/lib/fog/brightbox/requests/compute/resize_server.rb +27 -0
  93. data/lib/fog/brightbox/requests/compute/shutdown_server.rb +28 -0
  94. data/lib/fog/brightbox/requests/compute/snapshot_server.rb +28 -0
  95. data/lib/fog/brightbox/requests/compute/start_server.rb +28 -0
  96. data/lib/fog/brightbox/requests/compute/stop_server.rb +28 -0
  97. data/lib/fog/brightbox/requests/compute/unmap_cloud_ip.rb +28 -0
  98. data/lib/fog/brightbox/requests/compute/update_account.rb +28 -0
  99. data/lib/fog/brightbox/requests/compute/update_api_client.rb +29 -0
  100. data/lib/fog/brightbox/requests/compute/update_image.rb +29 -0
  101. data/lib/fog/brightbox/requests/compute/update_server.rb +29 -0
  102. data/lib/fog/brightbox/requests/compute/update_user.rb +29 -0
  103. data/lib/fog/core/attributes.rb +3 -3
  104. data/lib/fog/core/bin.rb +2 -0
  105. data/lib/fog/core/compute.rb +5 -2
  106. data/lib/fog/core/credentials.rb +2 -0
  107. data/lib/fog/core/service.rb +24 -12
  108. data/lib/fog/google/models/storage/file.rb +23 -14
  109. data/lib/fog/google/models/storage/files.rb +4 -14
  110. data/lib/fog/google/requests/storage/get_bucket.rb +0 -1
  111. data/lib/fog/google/requests/storage/put_object.rb +9 -2
  112. data/lib/fog/rackspace/models/storage/file.rb +3 -3
  113. data/lib/fog/rackspace/models/storage/files.rb +5 -13
  114. data/spec/aws/models/compute/server_spec.rb +0 -3
  115. data/spec/aws/requests/simpledb/get_attributes_spec.rb +11 -0
  116. data/spec/core/attributes_spec.rb +52 -0
  117. data/spec/vcloud/bin_spec.rb +1 -1
  118. data/spec/vcloud/vcloud_spec.rb +1 -1
  119. data/tests/aws/models/compute/flavors_tests.rb +5 -0
  120. data/tests/aws/models/compute/server_tests.rb +6 -0
  121. data/tests/aws/models/compute/servers_tests.rb +6 -0
  122. data/tests/aws/requests/storage/bucket_tests.rb +1 -1
  123. data/tests/aws/requests/storage/multipart_upload_tests.rb +135 -0
  124. data/tests/bluebox/models/compute/flavors_tests.rb +5 -0
  125. data/tests/bluebox/models/compute/server_tests.rb +5 -0
  126. data/tests/bluebox/models/compute/servers_tests.rb +6 -0
  127. data/tests/brightbox/helper.rb +0 -0
  128. data/tests/brightbox/models/compute/flavors_tests.rb +5 -0
  129. data/tests/brightbox/models/compute/server_tests.rb +6 -0
  130. data/tests/brightbox/models/compute/servers_tests.rb +6 -0
  131. data/tests/google/requests/storage/bucket_tests.rb +78 -0
  132. data/tests/google/requests/storage/object_tests.rb +81 -0
  133. data/tests/helper.rb +19 -4
  134. data/tests/helpers/collection_tests.rb +51 -0
  135. data/tests/helpers/compute/flavors_tests.rb +34 -0
  136. data/tests/helpers/compute/server_tests.rb +19 -0
  137. data/tests/helpers/compute/servers_tests.rb +11 -0
  138. data/tests/helpers/model_tests.rb +28 -0
  139. data/tests/helpers/storage/directories_tests.rb +4 -36
  140. data/tests/helpers/storage/directory_tests.rb +8 -22
  141. data/tests/helpers/storage/file_tests.rb +8 -25
  142. data/tests/helpers/storage/files_tests.rb +5 -39
  143. data/tests/local/models/storage/directories_tests.rb +1 -1
  144. data/tests/local/models/storage/directory_tests.rb +1 -1
  145. data/tests/local/models/storage/file_tests.rb +1 -1
  146. data/tests/local/models/storage/files_tests.rb +1 -1
  147. data/tests/rackspace/models/compute/flavors_tests.rb +5 -0
  148. data/tests/rackspace/models/compute/server_tests.rb +6 -0
  149. data/tests/rackspace/models/compute/servers_tests.rb +6 -0
  150. data/tests/rackspace/models/storage/directories_tests.rb +1 -1
  151. data/tests/rackspace/models/storage/directory_tests.rb +1 -1
  152. data/tests/rackspace/models/storage/file_tests.rb +1 -1
  153. data/tests/rackspace/models/storage/files_tests.rb +1 -1
  154. data/tests/slicehost/models/compute/flavors_tests.rb +5 -0
  155. data/tests/slicehost/models/compute/server_tests.rb +6 -0
  156. data/tests/slicehost/models/compute/servers_tests.rb +6 -0
  157. metadata +108 -31
  158. data/spec/aws/models/compute/flavors_spec.rb +0 -14
  159. data/spec/aws/models/compute/servers_spec.rb +0 -21
  160. data/spec/bluebox/models/compute/flavors_spec.rb +0 -17
  161. data/spec/bluebox/models/compute/server_spec.rb +0 -29
  162. data/spec/bluebox/models/compute/servers_spec.rb +0 -31
  163. data/spec/google/requests/storage/copy_object_spec.rb +0 -61
  164. data/spec/google/requests/storage/delete_bucket_spec.rb +0 -35
  165. data/spec/google/requests/storage/delete_object_spec.rb +0 -38
  166. data/spec/google/requests/storage/get_bucket_spec.rb +0 -110
  167. data/spec/google/requests/storage/get_object_spec.rb +0 -58
  168. data/spec/google/requests/storage/get_service_spec.rb +0 -32
  169. data/spec/google/requests/storage/head_object_spec.rb +0 -26
  170. data/spec/google/requests/storage/put_bucket_spec.rb +0 -21
  171. data/spec/google/requests/storage/put_object_spec.rb +0 -43
  172. data/spec/rackspace/models/compute/flavors_spec.rb +0 -18
  173. data/spec/rackspace/models/compute/server_spec.rb +0 -55
  174. data/spec/rackspace/models/compute/servers_spec.rb +0 -22
  175. data/spec/shared_examples/flavors_examples.rb +0 -16
  176. data/spec/shared_examples/server_examples.rb +0 -43
  177. data/spec/shared_examples/servers_examples.rb +0 -37
  178. data/spec/slicehost/models/compute/flavors_spec.rb +0 -18
  179. data/spec/slicehost/models/compute/server_spec.rb +0 -55
  180. data/spec/slicehost/models/compute/servers_spec.rb +0 -26
@@ -0,0 +1,27 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def list_images(options = {})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/1.0/images",
11
+ :headers => {"Content-Type" => "application/json"},
12
+ :body => options.to_json
13
+ )
14
+ end
15
+
16
+ end
17
+
18
+ class Mock
19
+
20
+ def list_images(options = {})
21
+ Fog::Mock.not_implemented
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def list_server_types(options = {})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/1.0/server_types",
11
+ :headers => {"Content-Type" => "application/json"},
12
+ :body => options.to_json
13
+ )
14
+ end
15
+
16
+ end
17
+
18
+ class Mock
19
+
20
+ def list_server_types(options = {})
21
+ Fog::Mock.not_implemented
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def list_servers(options = {})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/1.0/servers",
11
+ :headers => {"Content-Type" => "application/json"},
12
+ :body => options.to_json
13
+ )
14
+ end
15
+
16
+ end
17
+
18
+ class Mock
19
+
20
+ def list_servers(options = {})
21
+ Fog::Mock.not_implemented
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def list_users(options = {})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/1.0/users",
11
+ :headers => {"Content-Type" => "application/json"},
12
+ :body => options.to_json
13
+ )
14
+ end
15
+
16
+ end
17
+
18
+ class Mock
19
+
20
+ def list_users(options = {})
21
+ Fog::Mock.not_implemented
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def list_zones(options = {})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'GET',
10
+ :path => "/1.0/zones",
11
+ :headers => {"Content-Type" => "application/json"},
12
+ :body => options.to_json
13
+ )
14
+ end
15
+
16
+ end
17
+
18
+ class Mock
19
+
20
+ def list_zones(options = {})
21
+ Fog::Mock.not_implemented
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def map_cloud_ip(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ request(
9
+ :expects => [202],
10
+ :method => 'POST',
11
+ :path => "/1.0/cloud_ips/#{identifier}/map",
12
+ :headers => {"Content-Type" => "application/json"},
13
+ :body => options.to_json
14
+ )
15
+ end
16
+
17
+ end
18
+
19
+ class Mock
20
+
21
+ def map_cloud_ip(identifier, options = {})
22
+ Fog::Mock.not_implemented
23
+ end
24
+
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,27 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def reset_ftp_password_account(options = {})
7
+ request(
8
+ :expects => [200],
9
+ :method => 'POST',
10
+ :path => "/1.0/account/reset_ftp_password",
11
+ :headers => {"Content-Type" => "application/json"},
12
+ :body => options.to_json
13
+ )
14
+ end
15
+
16
+ end
17
+
18
+ class Mock
19
+
20
+ def reset_ftp_password_account(options = {})
21
+ Fog::Mock.not_implemented
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def resize_server(identifier, options = {})
7
+ request(
8
+ :expects => [202],
9
+ :method => 'POST',
10
+ :path => "/1.0/servers/#{identifier}/resize",
11
+ :headers => {"Content-Type" => "application/json"},
12
+ :body => options.to_json
13
+ )
14
+ end
15
+
16
+ end
17
+
18
+ class Mock
19
+
20
+ def resize_server(identifier, options = {})
21
+ Fog::Mock.not_implemented
22
+ end
23
+
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def shutdown_server(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ request(
9
+ :expects => [202],
10
+ :method => 'POST',
11
+ :path => "/1.0/servers/#{identifier}/shutdown",
12
+ :headers => {"Content-Type" => "application/json"},
13
+ :body => options.to_json
14
+ )
15
+ end
16
+
17
+ end
18
+
19
+ class Mock
20
+
21
+ def shutdown_server(identifier, options = {})
22
+ Fog::Mock.not_implemented
23
+ end
24
+
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def snapshot_server(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ request(
9
+ :expects => [202],
10
+ :method => 'POST',
11
+ :path => "/1.0/servers/#{identifier}/snapshot",
12
+ :headers => {"Content-Type" => "application/json"},
13
+ :body => options.to_json
14
+ )
15
+ end
16
+
17
+ end
18
+
19
+ class Mock
20
+
21
+ def snapshot_server(identifier, options = {})
22
+ Fog::Mock.not_implemented
23
+ end
24
+
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def start_server(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ request(
9
+ :expects => [202],
10
+ :method => 'POST',
11
+ :path => "/1.0/servers/#{identifier}/start",
12
+ :headers => {"Content-Type" => "application/json"},
13
+ :body => options.to_json
14
+ )
15
+ end
16
+
17
+ end
18
+
19
+ class Mock
20
+
21
+ def start_server(identifier, options = {})
22
+ Fog::Mock.not_implemented
23
+ end
24
+
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def stop_server(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ request(
9
+ :expects => [202],
10
+ :method => 'POST',
11
+ :path => "/1.0/servers/#{identifier}/stop",
12
+ :headers => {"Content-Type" => "application/json"},
13
+ :body => options.to_json
14
+ )
15
+ end
16
+
17
+ end
18
+
19
+ class Mock
20
+
21
+ def stop_server(identifier, options = {})
22
+ Fog::Mock.not_implemented
23
+ end
24
+
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def unmap_cloud_ip(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ request(
9
+ :expects => [202],
10
+ :method => 'POST',
11
+ :path => "/1.0/cloud_ips/#{identifier}/unmap",
12
+ :headers => {"Content-Type" => "application/json"},
13
+ :body => options.to_json
14
+ )
15
+ end
16
+
17
+ end
18
+
19
+ class Mock
20
+
21
+ def unmap_cloud_ip(identifier, options = {})
22
+ Fog::Mock.not_implemented
23
+ end
24
+
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def update_account(options = {})
7
+ return nil if options.empty? || options.nil?
8
+ request(
9
+ :expects => [200],
10
+ :method => 'PUT',
11
+ :path => "/1.0/account",
12
+ :headers => {"Content-Type" => "application/json"},
13
+ :body => options.to_json
14
+ )
15
+ end
16
+
17
+ end
18
+
19
+ class Mock
20
+
21
+ def update_account(options = {})
22
+ Fog::Mock.not_implemented
23
+ end
24
+
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,29 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def update_api_client(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ return nil if options.empty? || options.nil?
9
+ request(
10
+ :expects => [200],
11
+ :method => 'PUT',
12
+ :path => "/1.0/api_clients/#{identifier}",
13
+ :headers => {"Content-Type" => "application/json"},
14
+ :body => options.to_json
15
+ )
16
+ end
17
+
18
+ end
19
+
20
+ class Mock
21
+
22
+ def update_api_client(identifier, options = {})
23
+ Fog::Mock.not_implemented
24
+ end
25
+
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,29 @@
1
+ module Fog
2
+ module Brightbox
3
+ class Compute
4
+ class Real
5
+
6
+ def update_image(identifier, options = {})
7
+ return nil if identifier.nil? || identifier == ""
8
+ return nil if options.empty? || options.nil?
9
+ request(
10
+ :expects => [200],
11
+ :method => 'PUT',
12
+ :path => "/1.0/images/#{identifier}",
13
+ :headers => {"Content-Type" => "application/json"},
14
+ :body => options.to_json
15
+ )
16
+ end
17
+
18
+ end
19
+
20
+ class Mock
21
+
22
+ def update_image(identifier, options = {})
23
+ Fog::Mock.not_implemented
24
+ end
25
+
26
+ end
27
+ end
28
+ end
29
+ end