deltacloud-core 1.1.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (220) hide show
  1. data/Rakefile +40 -28
  2. data/bin/deltacloud-db-upgrade +24 -0
  3. data/bin/deltacloudd +20 -9
  4. data/config.ru +12 -53
  5. data/db/migrations/1_add_realm_to_machine_template.rb +23 -0
  6. data/deltacloud-core.gemspec +11 -5
  7. data/lib/cimi/collections.rb +4 -31
  8. data/lib/cimi/collections/address_templates.rb +2 -5
  9. data/lib/cimi/collections/addresses.rb +2 -5
  10. data/lib/cimi/collections/base.rb +18 -6
  11. data/lib/cimi/collections/credentials.rb +2 -5
  12. data/lib/cimi/collections/machine_images.rb +2 -1
  13. data/lib/cimi/collections/machine_templates.rb +2 -5
  14. data/lib/cimi/collections/machines.rb +6 -9
  15. data/lib/cimi/collections/network_ports.rb +3 -3
  16. data/lib/cimi/collections/networks.rb +5 -8
  17. data/lib/cimi/collections/system_templates.rb +72 -0
  18. data/lib/cimi/collections/systems.rb +194 -0
  19. data/lib/cimi/collections/volume_configurations.rb +1 -1
  20. data/lib/cimi/collections/volume_images.rb +2 -1
  21. data/lib/cimi/collections/volume_templates.rb +3 -2
  22. data/lib/cimi/collections/volumes.rb +2 -2
  23. data/lib/cimi/dependencies.rb +0 -2
  24. data/lib/cimi/helpers/cimi_helper.rb +12 -57
  25. data/lib/cimi/helpers/database_helper.rb +0 -4
  26. data/lib/cimi/models.rb +25 -14
  27. data/lib/cimi/models/address.rb +4 -31
  28. data/lib/cimi/models/address_create.rb +51 -0
  29. data/lib/cimi/models/address_template.rb +8 -52
  30. data/lib/cimi/models/address_template_create.rb +44 -0
  31. data/lib/cimi/models/base.rb +44 -6
  32. data/lib/cimi/models/cloud_entry_point.rb +1 -1
  33. data/lib/cimi/models/credential.rb +1 -1
  34. data/lib/cimi/models/credential_create.rb +46 -0
  35. data/lib/cimi/models/credential_template.rb +24 -0
  36. data/lib/cimi/models/machine.rb +1 -71
  37. data/lib/cimi/models/machine_configuration.rb +3 -3
  38. data/lib/cimi/models/machine_create.rb +49 -0
  39. data/lib/cimi/models/machine_image.rb +2 -25
  40. data/lib/cimi/models/machine_image_create.rb +41 -0
  41. data/lib/cimi/models/machine_template.rb +14 -34
  42. data/lib/cimi/models/machine_template_create.rb +33 -0
  43. data/lib/cimi/models/network.rb +0 -38
  44. data/lib/cimi/models/network_create.rb +43 -0
  45. data/lib/cimi/models/network_port.rb +17 -17
  46. data/lib/cimi/models/network_template.rb +2 -3
  47. data/lib/cimi/models/resource.rb +22 -3
  48. data/lib/cimi/models/schema.rb +94 -8
  49. data/lib/cimi/models/system.rb +67 -0
  50. data/lib/cimi/models/system_template.rb +63 -0
  51. data/lib/cimi/models/volume.rb +2 -42
  52. data/lib/cimi/models/volume_configuration.rb +4 -4
  53. data/lib/cimi/models/volume_create.rb +58 -0
  54. data/lib/cimi/models/volume_image.rb +8 -17
  55. data/lib/cimi/models/volume_image_create.rb +47 -0
  56. data/lib/cimi/models/volume_template.rb +6 -19
  57. data/lib/cimi/models/volume_template_create.rb +33 -0
  58. data/lib/db.rb +14 -22
  59. data/lib/db/volume_template.rb +1 -1
  60. data/lib/deltacloud/api.rb +6 -5
  61. data/lib/deltacloud/collections.rb +4 -27
  62. data/lib/deltacloud/collections/base.rb +4 -0
  63. data/lib/deltacloud/collections/images.rb +1 -1
  64. data/lib/deltacloud/collections/instances.rb +2 -2
  65. data/lib/deltacloud/core_ext/array.rb +1 -0
  66. data/lib/deltacloud/core_ext/integer.rb +13 -9
  67. data/lib/deltacloud/core_ext/string.rb +45 -28
  68. data/lib/deltacloud/drivers/arubacloud/arubacloud_driver.rb +0 -9
  69. data/lib/deltacloud/drivers/base_driver.rb +45 -16
  70. data/lib/deltacloud/drivers/digitalocean/digitalocean_driver.rb +78 -8
  71. data/lib/deltacloud/drivers/ec2/ec2_driver.rb +13 -9
  72. data/lib/deltacloud/drivers/fgcp/fgcp_client.rb +44 -0
  73. data/lib/deltacloud/drivers/fgcp/fgcp_driver.rb +164 -90
  74. data/lib/deltacloud/drivers/fgcp/fgcp_driver_cimi_methods.rb +74 -0
  75. data/lib/deltacloud/drivers/mock/data/instances/inst0.yml +3 -3
  76. data/lib/deltacloud/drivers/mock/data/instances/inst1.yml +3 -3
  77. data/lib/deltacloud/drivers/mock/data/instances/inst2.yml +3 -3
  78. data/lib/deltacloud/drivers/mock/mock_client.rb +17 -1
  79. data/lib/deltacloud/drivers/mock/mock_driver.rb +161 -204
  80. data/lib/deltacloud/drivers/mock/mock_driver_cimi_methods.rb +80 -0
  81. data/lib/deltacloud/drivers/opennebula/opennebula_driver.rb +6 -1
  82. data/lib/deltacloud/drivers/openstack/openstack_driver.rb +61 -68
  83. data/lib/deltacloud/drivers/rackspace/rackspace_driver.rb +0 -9
  84. data/lib/deltacloud/drivers/rhevm/rhevm_driver.rb +11 -6
  85. data/lib/deltacloud/drivers/terremark/terremark_driver.rb +0 -8
  86. data/lib/deltacloud/drivers/vsphere/vsphere_client.rb +11 -4
  87. data/lib/deltacloud/drivers/vsphere/vsphere_driver.rb +0 -12
  88. data/lib/deltacloud/helpers/collection_helper.rb +106 -0
  89. data/lib/deltacloud/helpers/deltacloud_helper.rb +12 -8
  90. data/lib/deltacloud/models/address.rb +19 -17
  91. data/lib/deltacloud/models/base_model.rb +29 -26
  92. data/lib/deltacloud/models/blob.rb +22 -20
  93. data/lib/deltacloud/models/bucket.rb +21 -16
  94. data/lib/deltacloud/models/firewall.rb +18 -16
  95. data/lib/deltacloud/models/firewall_rule.rb +22 -20
  96. data/lib/deltacloud/models/image.rb +29 -28
  97. data/lib/deltacloud/models/instance.rb +92 -94
  98. data/lib/deltacloud/models/instance_address.rb +42 -40
  99. data/lib/deltacloud/models/instance_profile.rb +28 -26
  100. data/lib/deltacloud/models/key.rb +47 -45
  101. data/lib/deltacloud/models/load_balancer.rb +32 -31
  102. data/lib/deltacloud/models/metric.rb +76 -29
  103. data/lib/deltacloud/models/provider.rb +15 -13
  104. data/lib/deltacloud/models/realm.rb +15 -21
  105. data/lib/deltacloud/models/storage_snapshot.rb +23 -19
  106. data/lib/deltacloud/models/storage_volume.rb +35 -34
  107. data/lib/deltacloud/version.rb +1 -1
  108. data/lib/deltacloud_rack.rb +22 -0
  109. data/lib/initialize.rb +28 -0
  110. data/lib/initializers/database_initialize.rb +76 -0
  111. data/lib/initializers/frontend_initialize.rb +42 -0
  112. data/lib/initializers/mock_initialize.rb +33 -0
  113. data/lib/sinatra/rack_logger.rb +35 -24
  114. data/tests/cimi/collections/cloud_entry_point_test.rb +1 -7
  115. data/tests/cimi/collections/machine_images_test.rb +2 -2
  116. data/tests/cimi/collections/machine_templates_test.rb +75 -0
  117. data/tests/cimi/collections/machines_test.rb +2 -2
  118. data/tests/cimi/collections/system_templates_test.rb +41 -0
  119. data/tests/cimi/collections/systems_test.rb +50 -0
  120. data/tests/cimi/db/database_helper_test.rb +17 -25
  121. data/tests/cimi/db/db_helper.rb +1 -12
  122. data/tests/cimi/db/entity_test.rb +7 -8
  123. data/tests/cimi/model/machine_create_spec.rb +44 -0
  124. data/tests/cimi/model/machine_template_spec.rb +29 -0
  125. data/tests/cimi/model/resource_spec.rb +40 -0
  126. data/tests/cimi/model/schema_spec.rb +37 -0
  127. data/tests/cimi/spec_helper.rb +3 -0
  128. data/tests/deltacloud/collections/buckets_collection_test.rb +1 -1
  129. data/tests/deltacloud/collections/drivers_collection_test.rb +2 -2
  130. data/tests/deltacloud/collections/hardware_profiles_collection_test.rb +2 -2
  131. data/tests/deltacloud/collections/images_collection_test.rb +2 -2
  132. data/tests/deltacloud/collections/instance_states_collection_test.rb +1 -1
  133. data/tests/deltacloud/collections/instances_collection_test.rb +6 -3
  134. data/tests/deltacloud/collections/keys_collection_test.rb +2 -2
  135. data/tests/deltacloud/collections/realms_collection_test.rb +2 -2
  136. data/tests/deltacloud/collections/storage_snapshots_collection_test.rb +2 -2
  137. data/tests/deltacloud/collections/storage_volumes_collection_test.rb +2 -2
  138. data/tests/deltacloud/collections_test.rb +5 -5
  139. data/tests/deltacloud/common.rb +2 -13
  140. data/tests/deltacloud/launcher_test.rb +3 -3
  141. data/tests/deltacloud/rack_test.rb +2 -2
  142. data/tests/deltacloud/server_test.rb +1 -1
  143. data/tests/drivers/base/base_driver_test.rb +5 -5
  144. data/tests/drivers/base/common.rb +2 -12
  145. data/tests/drivers/ec2/buckets_test.rb +1 -1
  146. data/tests/drivers/ec2/images_test.rb +2 -2
  147. data/tests/drivers/ec2/instance_test.rb +6 -6
  148. data/tests/drivers/ec2/keys_test.rb +3 -3
  149. data/tests/drivers/ec2/realms_test.rb +2 -2
  150. data/tests/drivers/ec2/storage_snapshots_test.rb +1 -1
  151. data/tests/drivers/fgcp/common.rb +32 -0
  152. data/tests/drivers/fgcp/firewall_test.rb +70 -0
  153. data/tests/drivers/fgcp/hardware_profiles_test.rb +61 -0
  154. data/tests/drivers/fgcp/images_test.rb +46 -0
  155. data/tests/drivers/fgcp/provider_test.rb +27 -0
  156. data/tests/drivers/fgcp/realms_test.rb +53 -0
  157. data/tests/drivers/fgcp/storage_volumes_test.rb +58 -0
  158. data/tests/drivers/gogrid/images_test.rb +2 -2
  159. data/tests/drivers/gogrid/instances_test.rb +2 -2
  160. data/tests/drivers/gogrid/realms_test.rb +2 -2
  161. data/tests/drivers/mock/images_test.rb +4 -4
  162. data/tests/drivers/mock/instances_test.rb +9 -9
  163. data/tests/drivers/mock/keys_test.rb +3 -3
  164. data/tests/drivers/mock/realms_test.rb +2 -2
  165. data/tests/drivers/mock/storage_snapshots_test.rb +2 -2
  166. data/tests/drivers/mock/storage_volumes_test.rb +4 -4
  167. data/tests/drivers/models/instance_test.rb +2 -2
  168. data/tests/drivers/openstack/images_test.rb +2 -2
  169. data/tests/drivers/openstack/instances_test.rb +2 -3
  170. data/tests/drivers/openstack/keys_test.rb +1 -1
  171. data/tests/drivers/openstack/realms_test.rb +2 -11
  172. data/tests/drivers/rhevm/common.rb +33 -12
  173. data/tests/drivers/rhevm/images_test.rb +20 -12
  174. data/tests/drivers/rhevm/instance_test.rb +62 -46
  175. data/tests/drivers/rhevm/provider_test.rb +12 -6
  176. data/tests/drivers/rhevm/realms_test.rb +15 -9
  177. data/tests/ec2/query_parser_test.rb +1 -1
  178. data/tests/test_helper.rb +68 -12
  179. data/views/addresses/show.html.haml +1 -1
  180. data/views/buckets/show.html.haml +1 -1
  181. data/views/errors/{500.html.haml → common.html.haml} +0 -0
  182. data/views/errors/common.xml.haml +17 -0
  183. data/views/firewalls/index.xml.haml +2 -2
  184. data/views/firewalls/new.html.haml +2 -2
  185. data/views/images/show.html.haml +1 -1
  186. data/views/instances/run_command.html.haml +1 -1
  187. data/views/instances/show.html.haml +3 -3
  188. data/views/keys/index.html.haml +1 -0
  189. data/views/keys/show.html.haml +8 -4
  190. data/views/keys/show.xml.haml +3 -2
  191. data/views/load_balancers/new.html.haml +1 -1
  192. data/views/load_balancers/show.html.haml +2 -2
  193. data/views/metrics/show.html.haml +1 -1
  194. data/views/realms/index.html.haml +0 -2
  195. data/views/realms/show.html.haml +0 -4
  196. data/views/realms/show.xml.haml +0 -3
  197. data/views/storage_snapshots/index.html.haml +1 -1
  198. data/views/storage_snapshots/new.html.haml +1 -1
  199. data/views/storage_volumes/new.html.haml +2 -2
  200. data/views/storage_volumes/show.html.haml +3 -3
  201. metadata +90 -41
  202. data/views/errors/400.html.haml +0 -41
  203. data/views/errors/400.xml.haml +0 -3
  204. data/views/errors/401.html.haml +0 -26
  205. data/views/errors/401.xml.haml +0 -3
  206. data/views/errors/403.html.haml +0 -42
  207. data/views/errors/403.xml.haml +0 -9
  208. data/views/errors/404.html.haml +0 -28
  209. data/views/errors/404.xml.haml +0 -3
  210. data/views/errors/405.html.haml +0 -29
  211. data/views/errors/405.xml.haml +0 -5
  212. data/views/errors/409.html.haml +0 -47
  213. data/views/errors/409.xml.haml +0 -11
  214. data/views/errors/500.xml.haml +0 -13
  215. data/views/errors/501.html.haml +0 -44
  216. data/views/errors/501.xml.haml +0 -1
  217. data/views/errors/502.html.haml +0 -44
  218. data/views/errors/502.xml.haml +0 -1
  219. data/views/errors/504.html.haml +0 -43
  220. data/views/errors/504.xml.haml +0 -1
@@ -1,41 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3=[@error.class.name, @error.message].join(' - ')
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
- %li{ :'data-role' => 'list-divider'} Error details
12
- %li
13
- - if @error.class.method_defined? :details
14
- %p= @error.details
15
- - else
16
- %em No details
17
-
18
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
19
- %h3 Backtrace
20
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
21
- %li
22
- %pre=(@error.backtrace.nil?) ? "n/a" : @error.backtrace.join("\n")
23
-
24
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
25
- %h3 Parameters
26
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
27
- - if params.keys.empty?
28
- %li{ :'data-role' => 'list-divider'} No parameters
29
- - params.each do |key, value|
30
- %li{ :'data-role' => 'list-divider'}=key
31
- %li
32
- %span{:style => 'font-weight:normal;'}=value.inspect
33
-
34
-
35
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
36
- %h3 Request details
37
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
38
- - request.env.each do |key, value|
39
- %li{ :'data-role' => 'list-divider'}=key
40
- %li
41
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1,3 +0,0 @@
1
- %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
2
- %message< #{cdata @error.message}
3
- %backend{ :driver => driver_symbol, :provider => "#{Thread::current[:provider] || ENV['API_PROVIDER'] || 'default'}" }
@@ -1,26 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3 Authentication Failure
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
- %li{ :'data-role' => 'list-divider'} Error details
12
- %li
13
- - if @error.class.method_defined? :details
14
- %p= @error.details
15
- - else
16
- %em No details
17
-
18
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
19
- %h3 Parameters
20
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
21
- - if params.keys.empty?
22
- %li{ :'data-role' => 'list-divider'} No parameters
23
- - params.each do |key, value|
24
- %li{ :'data-role' => 'list-divider'}=key
25
- %li
26
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1,3 +0,0 @@
1
- %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
2
- %message Authentication required
3
-
@@ -1,42 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3=[@error.class.name, @error.message].join(' - ')
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
- %li{ :'data-role' => 'list-divider'} Error details
12
- %li
13
- - if @error.class.method_defined? :details
14
- %p= @error.details
15
- - else
16
- %em No details
17
-
18
- - if @error.backtrace
19
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
20
- %h3 Backtrace
21
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
22
- %li
23
- %pre=@error.backtrace.join("\n")
24
-
25
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
26
- %h3 Parameters
27
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
28
- - if params.keys.empty?
29
- %li{ :'data-role' => 'list-divider'} No parameters
30
- - params.each do |key, value|
31
- %li{ :'data-role' => 'list-divider'}=key
32
- %li
33
- %span{:style => 'font-weight:normal;'}=value.inspect
34
-
35
-
36
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
37
- %h3 Request details
38
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
39
- - request.env.each do |key, value|
40
- %li{ :'data-role' => 'list-divider'}=key
41
- %li
42
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1,9 +0,0 @@
1
- %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
2
- %backend{ :driver => driver_symbol, :provider => "#{Thread::current[:provider] || ENV['API_PROVIDER'] || 'default'}" }
3
- - if @error.respond_to?(:backtrace) and !@error.backtrace.nil?
4
- %backtrace=cdata(@error.backtrace.join("\n"))
5
- - if params
6
- %request
7
- - params.each do |k, v|
8
- %param{ :name => k}=v
9
- %message Method not allowed for this resource
@@ -1,28 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3 Not Found
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
-
12
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
13
- %h3 Parameters
14
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
15
- - if params.keys.empty?
16
- %li{ :'data-role' => 'list-divider'} No parameters
17
- - params.each do |key, value|
18
- %li{ :'data-role' => 'list-divider'}=key
19
- %li
20
- %span{:style => 'font-weight:normal;'}=value.inspect
21
-
22
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
23
- %h3 Request Headers
24
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
25
- - request_headers.each do |key, value|
26
- %li{ :'data-role' => 'list-divider'}=key
27
- %li
28
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1,3 +0,0 @@
1
- %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
2
- %backend{ :driver => driver_symbol, :provider => "#{Thread::current[:provider] || ENV['API_PROVIDER'] || 'default'}" }
3
- %message Resource not found
@@ -1,29 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3 Method not allowed on given resource
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
-
12
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
13
- %h3 Parameters
14
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
15
- - if params.keys.empty?
16
- %li{ :'data-role' => 'list-divider'} No parameters
17
- - params.each do |key, value|
18
- %li{ :'data-role' => 'list-divider'}=key
19
- %li
20
- %span{:style => 'font-weight:normal;'}=value.inspect
21
-
22
-
23
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
24
- %h3 Request details
25
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
26
- - request.env.each do |key, value|
27
- %li{ :'data-role' => 'list-divider'}=key
28
- %li
29
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1,5 +0,0 @@
1
- %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
2
- %message
3
- Requested method not allowed
4
- %method
5
- =request.env['REQUEST_METHOD']
@@ -1,47 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3= h [@error.class.name, @error.message].join(' - ')
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
- %li{ :'data-role' => 'list-divider'} Error details
12
- %li
13
- - if @error.class.method_defined? :details
14
- %p= h @error.details
15
- - else
16
- %em No details
17
- %li{ :'data-role' => 'list-divider'} Backtrace
18
- %li
19
- %em No details
20
-
21
- - if @error.backtrace
22
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
23
- %h3 Backtrace
24
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
25
- %li
26
- %pre= h @error.backtrace.join("\n")
27
-
28
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
29
- %h3 Parameters
30
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
31
- - if params.keys.empty?
32
- %li{ :'data-role' => 'list-divider'} No parameters
33
- - params.each do |key, value|
34
- - next if value.inspect.to_s == '#'
35
- %li{ :'data-role' => 'list-divider'}=key
36
- %li
37
- %span{:style => 'font-weight:normal;'}=value.inspect
38
-
39
-
40
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
41
- %h3 Request details
42
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
43
- - request.env.each do |key, value|
44
- - next if value.inspect.to_s == '#'
45
- %li{ :'data-role' => 'list-divider'}=key
46
- %li
47
- %span{:style => 'font-weight:normal;'}= h value.inspect
@@ -1,11 +0,0 @@
1
- - unless defined?(partial)
2
- !!! XML
3
- %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
4
- %kind backend_error
5
- %backend{ :driver => driver_symbol, :provider => "#{Thread::current[:provider] || ENV['API_PROVIDER'] || 'default'}" }
6
- %code=response.status
7
- %message< #{cdata @error.message}
8
- - if params
9
- %request
10
- - params.each do |k, v|
11
- %param{ :name => k}=v
@@ -1,13 +0,0 @@
1
- - unless defined?(partial)
2
- !!! XML
3
- %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
4
- %kind backend_error
5
- %backend{ :driver => driver_symbol, :provider => "#{Thread::current[:provider] || ENV['API_PROVIDER'] || 'default'}" }
6
- %code=response.status
7
- %message< #{cdata @error.message}
8
- - if @error.respond_to?(:backtrace) and !@error.backtrace.nil?
9
- %backtrace=cdata(@error.backtrace.join("\n"))
10
- - if params
11
- %request
12
- - params.each do |k, v|
13
- %param{ :name => k}=v
@@ -1,44 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3=[@error.class.name, @error.message].join(' - ')
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
- %li{ :'data-role' => 'list-divider'} Error details
12
- %li
13
- - if @error.class.method_defined? :details
14
- %p= @error.details
15
- - else
16
- %em No details
17
-
18
- - if @error.class.method_defined? :backtrace
19
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
20
- %h3 Backtrace
21
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
22
- %li
23
- %pre=@error.backtrace.join("\n") unless @error.backtrace.nil?
24
-
25
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
26
- %h3 Parameters
27
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
28
- - if params.keys.empty?
29
- %li{ :'data-role' => 'list-divider'} No parameters
30
- - params.each do |key, value|
31
- - next if value.inspect.to_s == '#'
32
- %li{ :'data-role' => 'list-divider'}=key
33
- %li
34
- %span{:style => 'font-weight:normal;'}=value.inspect
35
-
36
-
37
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
38
- %h3 Request details
39
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
40
- - request.env.each do |key, value|
41
- - next if value.inspect.to_s == '#'
42
- %li{ :'data-role' => 'list-divider'}=key
43
- %li
44
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1 +0,0 @@
1
- = haml :'errors/500', :locals => { :@error => @error, :partial => true }
@@ -1,44 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3=[@error.class.name, @error.message].join(' - ')
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
- %li{ :'data-role' => 'list-divider'} Error details
12
- %li
13
- - if @error.class.method_defined? :details
14
- %p= @error.details
15
- - else
16
- %em No details
17
-
18
- - if @error.backtrace
19
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
20
- %h3 Backtrace
21
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
22
- %li
23
- %pre=@error.backtrace.join("\n")
24
-
25
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
26
- %h3 Parameters
27
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
28
- - if params.keys.empty?
29
- %li{ :'data-role' => 'list-divider'} No parameters
30
- - params.each do |key, value|
31
- - next if value.inspect.to_s == '#'
32
- %li{ :'data-role' => 'list-divider'}=key
33
- %li
34
- %span{:style => 'font-weight:normal;'}=value.inspect
35
-
36
-
37
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
38
- %h3 Request details
39
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
40
- - request.env.each do |key, value|
41
- - next if value.inspect.to_s == '#'
42
- %li{ :'data-role' => 'list-divider'}=key
43
- %li
44
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1 +0,0 @@
1
- = haml :'errors/500', :locals => { :@error => @error, :partial => true }
@@ -1,43 +0,0 @@
1
- %div{ :'data-role' => :content, :'data-theme' => 'b'}
2
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
3
- %li{ :'data-role' => 'list-divider'} Server message
4
- %li
5
- %h3=[@error.class.name, @error.message].join(' - ')
6
- %li{ :'data-role' => 'list-divider'} Original request URI
7
- %li
8
- %a{ :href => request.env['REQUEST_URI'], :'data-ajax' => 'false'}
9
- %span=request.env['REQUEST_URI']
10
- %span{ :class => 'ui-li-count'} Retry
11
- %li{ :'data-role' => 'list-divider'} Error details
12
- %li
13
- - if @error.class.method_defined? :details
14
- %p= @error.details
15
- - else
16
- %em No details
17
-
18
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
19
- %h3 Backtrace
20
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
21
- %li
22
- %pre=@error.backtrace.join("\n")
23
-
24
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
25
- %h3 Parameters
26
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
27
- - if params.keys.empty?
28
- %li{ :'data-role' => 'list-divider'} No parameters
29
- - params.each do |key, value|
30
- - next if value.inspect.to_s == '#'
31
- %li{ :'data-role' => 'list-divider'}=key
32
- %li
33
- %span{:style => 'font-weight:normal;'}=value.inspect
34
-
35
-
36
- %div{ 'data-role' => :collapsible, 'data-collapsed' => "true"}
37
- %h3 Request details
38
- %ul{ :'data-role' => :listview , :'data-inset' => :true, :'data-divider-theme' => 'e'}
39
- - request.env.each do |key, value|
40
- - next if value.inspect.to_s == '#'
41
- %li{ :'data-role' => 'list-divider'}=key
42
- %li
43
- %span{:style => 'font-weight:normal;'}=value.inspect
@@ -1 +0,0 @@
1
- = haml :'errors/500', :locals => { :@error => @error, :partial => true }