deltacloud-core 1.1.0 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. data/Rakefile +10 -12
  2. data/config/drivers/{aruba.yaml → arubacloud.yaml} +2 -2
  3. data/deltacloud-core.gemspec +4 -4
  4. data/lib/cimi/collections/address_templates.rb +1 -1
  5. data/lib/cimi/collections/addresses.rb +2 -2
  6. data/lib/cimi/collections/base.rb +1 -0
  7. data/lib/cimi/collections/credentials.rb +1 -1
  8. data/lib/cimi/collections/forwarding_group_templates.rb +1 -1
  9. data/lib/cimi/collections/forwarding_groups.rb +1 -1
  10. data/lib/cimi/collections/machine_configurations.rb +1 -1
  11. data/lib/cimi/collections/machine_images.rb +1 -1
  12. data/lib/cimi/collections/machine_templates.rb +1 -1
  13. data/lib/cimi/collections/machines.rb +2 -2
  14. data/lib/cimi/collections/network_configurations.rb +1 -1
  15. data/lib/cimi/collections/network_port_configurations.rb +1 -1
  16. data/lib/cimi/collections/network_port_templates.rb +1 -1
  17. data/lib/cimi/collections/network_ports.rb +1 -1
  18. data/lib/cimi/collections/network_templates.rb +1 -1
  19. data/lib/cimi/collections/networks.rb +1 -1
  20. data/lib/cimi/collections/volume_configurations.rb +1 -1
  21. data/lib/cimi/collections/volume_images.rb +1 -1
  22. data/lib/cimi/collections/volume_templates.rb +1 -1
  23. data/lib/cimi/collections/volumes.rb +1 -1
  24. data/lib/cimi/helpers/database_helper.rb +16 -61
  25. data/lib/cimi/helpers/filter_helper.rb +41 -0
  26. data/lib/cimi/helpers/select_helper.rb +62 -0
  27. data/lib/cimi/models.rb +21 -2
  28. data/lib/cimi/models/address.rb +9 -7
  29. data/lib/cimi/models/address_template.rb +4 -4
  30. data/lib/cimi/models/base.rb +62 -197
  31. data/lib/cimi/models/collection.rb +78 -70
  32. data/lib/cimi/models/disk.rb +15 -8
  33. data/lib/cimi/models/machine.rb +27 -29
  34. data/lib/cimi/models/machine_image.rb +10 -13
  35. data/lib/cimi/models/machine_template.rb +3 -3
  36. data/lib/cimi/models/resource.rb +190 -0
  37. data/lib/cimi/models/schema.rb +9 -0
  38. data/lib/cimi/models/volume.rb +10 -13
  39. data/lib/cimi/models/volume_configuration.rb +3 -3
  40. data/lib/cimi/models/volume_template.rb +2 -2
  41. data/lib/cimi/server.rb +1 -0
  42. data/lib/db.rb +15 -0
  43. data/lib/db/address_template.rb +15 -0
  44. data/lib/db/entity.rb +55 -0
  45. data/lib/db/machine_template.rb +15 -0
  46. data/lib/db/provider.rb +40 -0
  47. data/lib/db/volume_configuration.rb +15 -0
  48. data/lib/db/volume_template.rb +15 -0
  49. data/lib/deltacloud/collections/base.rb +1 -0
  50. data/lib/deltacloud/collections/instances.rb +2 -1
  51. data/lib/deltacloud/collections/storage_snapshots.rb +3 -1
  52. data/lib/deltacloud/core_ext/array.rb +5 -0
  53. data/lib/deltacloud/drivers/{aruba/aruba_driver.rb → arubacloud/arubacloud_driver.rb} +3 -6
  54. data/lib/deltacloud/drivers/digitalocean/digitalocean_driver.rb +48 -75
  55. data/lib/deltacloud/drivers/ec2/ec2_driver.rb +18 -3
  56. data/lib/deltacloud/drivers/eucalyptus/eucalyptus_driver.rb +25 -0
  57. data/lib/deltacloud/drivers/fgcp/fgcp_client.rb +1 -1
  58. data/lib/deltacloud/drivers/fgcp/fgcp_driver.rb +34 -14
  59. data/lib/deltacloud/drivers/gogrid/gogrid_driver.rb +2 -0
  60. data/lib/deltacloud/drivers/mock/mock_driver.rb +3 -3
  61. data/lib/deltacloud/drivers/openstack/openstack_driver.rb +93 -33
  62. data/lib/deltacloud/drivers/rackspace/rackspace_driver.rb +2 -0
  63. data/lib/deltacloud/drivers/rhevm/rhevm_driver.rb +2 -2
  64. data/lib/deltacloud/helpers/deltacloud_helper.rb +3 -1
  65. data/lib/deltacloud/helpers/rabbit_helper.rb +1 -2
  66. data/lib/deltacloud/models/address.rb +1 -0
  67. data/lib/deltacloud/models/blob.rb +1 -0
  68. data/lib/deltacloud/models/bucket.rb +1 -0
  69. data/lib/deltacloud/models/firewall.rb +1 -0
  70. data/lib/deltacloud/models/hardware_profile.rb +3 -1
  71. data/lib/deltacloud/models/image.rb +7 -0
  72. data/lib/deltacloud/models/instance.rb +12 -3
  73. data/lib/deltacloud/models/key.rb +1 -0
  74. data/lib/deltacloud/models/load_balancer.rb +1 -0
  75. data/lib/deltacloud/models/metric.rb +1 -0
  76. data/lib/deltacloud/models/realm.rb +10 -1
  77. data/lib/deltacloud/models/storage_snapshot.rb +1 -0
  78. data/lib/deltacloud/models/storage_volume.rb +2 -1
  79. data/lib/deltacloud/runner.rb +2 -1
  80. data/lib/deltacloud/server.rb +1 -0
  81. data/lib/deltacloud/version.rb +1 -1
  82. data/lib/deltacloud_rack.rb +4 -0
  83. data/tests/cimi/collections/machines_test.rb +80 -0
  84. data/tests/cimi/db/database_helper_test.rb +54 -99
  85. data/tests/cimi/db/db_helper.rb +2 -0
  86. data/tests/cimi/db/entity_test.rb +29 -0
  87. data/tests/cimi/model/collection_spec.rb +2 -2
  88. data/tests/cimi/model/credential_spec.rb +2 -2
  89. data/tests/cimi/model/machine_configuration_spec.rb +2 -2
  90. data/tests/cimi/model/machine_image_spec.rb +2 -2
  91. data/tests/cimi/model/machine_spec.rb +4 -4
  92. data/tests/cimi/model/machine_template_spec.rb +2 -2
  93. data/tests/cimi/model/volume_configuration_spec.rb +2 -2
  94. data/tests/cimi/model/volume_image_spec.rb +2 -2
  95. data/tests/cimi/model/volume_spec.rb +2 -2
  96. data/tests/cimi/model/volume_template_spec.rb +2 -2
  97. data/tests/cimi/spec_helper.rb +4 -0
  98. data/tests/deltacloud/collections/instances_collection_test.rb +3 -1
  99. data/tests/deltacloud/launcher_test.rb +3 -5
  100. data/tests/drivers/ec2/images_test.rb +7 -0
  101. data/tests/drivers/gogrid/images_test.rb +7 -0
  102. data/tests/drivers/openstack/instances_test.rb +8 -8
  103. data/tests/drivers/openstack/realms_test.rb +13 -13
  104. data/views/errors/403.xml.haml +2 -1
  105. data/views/images/show.html.haml +4 -1
  106. data/views/images/show.xml.haml +1 -0
  107. data/views/instances/new.html.haml +1 -1
  108. data/views/instances/show.html.haml +3 -0
  109. data/views/realms/index.html.haml +2 -0
  110. data/views/realms/show.html.haml +4 -0
  111. data/views/realms/show.xml.haml +3 -0
  112. metadata +19 -14
@@ -1,5 +1,7 @@
1
1
  # Memory database
2
2
  if RUBY_PLATFORM == 'java'
3
+ require 'jdbc/sqlite3'
4
+ Jdbc::SQLite3.load_driver
3
5
  ENV['DATABASE_LOCATION'] = 'jdbc:sqlite::memory:'
4
6
  else
5
7
  ENV['DATABASE_LOCATION'] = 'sqlite:/'
@@ -0,0 +1,29 @@
1
+ require 'rubygems'
2
+ require 'require_relative' if RUBY_VERSION < '1.9'
3
+ require 'minitest/autorun'
4
+
5
+ require_relative 'db_helper.rb'
6
+ require_relative '../spec_helper.rb'
7
+ require_relative './../collections/common.rb'
8
+
9
+ describe "Deltacloud::Database::Entity" do
10
+ Provider = Deltacloud::Database::Provider
11
+ Entity = Deltacloud::Database::Entity
12
+ BaseModel = CIMI::Model::Base
13
+
14
+ before do
15
+ ENV['RACK_ENV'] = 'development'
16
+ @prov = Provider::lookup
17
+ end
18
+
19
+ it 'newly created entities have valid ent_properties' do
20
+ model = BaseModel.new(:id => "/base/42")
21
+ ent = Entity.retrieve(model)
22
+ ent.properties = nil
23
+ ent.exists?.must_equal false
24
+ ent.save
25
+
26
+ ent = Entity.retrieve(model)
27
+ ent.exists?.must_equal true
28
+ end
29
+ end
@@ -35,8 +35,8 @@ describe "Collection class" do
35
35
 
36
36
  before do
37
37
  @models = ["m1", "m2"].map { |s| Model.new(:text => s) }
38
- @xml = IO::read(File::join(DATA_DIR, "container.xml"))
39
- @json = IO::read(File::join(DATA_DIR, "container.json"))
38
+ @xml = read_data_file("container.xml")
39
+ @json = read_data_file("container.json")
40
40
  end
41
41
 
42
42
  describe "XML serialization" do
@@ -24,8 +24,8 @@ end
24
24
  describe "Credential model" do
25
25
 
26
26
  before do
27
- @xml = IO::read(File::join(DATA_DIR, "credential.xml"))
28
- @json = IO::read(File::join(DATA_DIR, "credential.json"))
27
+ @xml = read_data_file("credential.xml")
28
+ @json = read_data_file("credential.json")
29
29
  end
30
30
 
31
31
  it "can be constructed from XML and JSON" do
@@ -20,8 +20,8 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
20
20
  describe "MachineConfiguration model" do
21
21
 
22
22
  before do
23
- @xml = IO::read(File::join(DATA_DIR, "machine_configuration.xml"))
24
- @json = IO::read(File::join(DATA_DIR, "machine_configuration.json"))
23
+ @xml = read_data_file("machine_configuration.xml")
24
+ @json = read_data_file("machine_configuration.json")
25
25
  end
26
26
 
27
27
  it "can be constructed from XML and JSON" do
@@ -21,8 +21,8 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
21
21
  describe "MachineImage model" do
22
22
 
23
23
  before do
24
- @xml = IO::read(File::join(DATA_DIR, "machine_image.xml"))
25
- @json = IO::read(File::join(DATA_DIR, "machine_image.json"))
24
+ @xml = read_data_file("machine_image.xml")
25
+ @json = read_data_file("machine_image.json")
26
26
  end
27
27
 
28
28
  it "can be constructed from XML and JSON" do
@@ -21,10 +21,10 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
21
21
  describe "Machine model" do
22
22
 
23
23
  before do
24
- @xml = IO::read(File::join(DATA_DIR, "machine.xml"))
25
- @json = IO::read(File::join(DATA_DIR, "machine.json"))
26
- @xml_minimal = IO::read(File::join(DATA_DIR, "machine-minimal.xml"))
27
- @json_minimal = IO::read(File::join(DATA_DIR, "machine-minimal.json"))
24
+ @xml = read_data_file("machine.xml")
25
+ @json = read_data_file("machine.json")
26
+ @xml_minimal = read_data_file("machine-minimal.xml")
27
+ @json_minimal = read_data_file("machine-minimal.json")
28
28
  end
29
29
 
30
30
  it "can be constructed from XML and JSON" do
@@ -21,8 +21,8 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
21
21
  describe "MachineTemplate model" do
22
22
 
23
23
  before do
24
- @xml = IO::read(File::join(DATA_DIR, "machine_template.xml"))
25
- @json = IO::read(File::join(DATA_DIR, "machine_template.json"))
24
+ @xml = read_data_file("machine_template.xml")
25
+ @json = read_data_file("machine_template.json")
26
26
  end
27
27
 
28
28
  it "can be constructed from XML and JSON" do
@@ -22,8 +22,8 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
22
22
  describe "Volume Configuration model" do
23
23
 
24
24
  before do
25
- @xml = IO::read(File::join(DATA_DIR, "volume_configuration.xml"))
26
- @json = IO::read(File::join(DATA_DIR, "volume_configuration.json"))
25
+ @xml = read_data_file("volume_configuration.xml")
26
+ @json = read_data_file("volume_configuration.json")
27
27
  end
28
28
 
29
29
  it "can be constructed from XML and JSON" do
@@ -21,8 +21,8 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
21
21
  describe "Volume Image model" do
22
22
 
23
23
  before do
24
- @xml = IO::read(File::join(DATA_DIR, "volume_image.xml"))
25
- @json = IO::read(File::join(DATA_DIR, "volume_image.json"))
24
+ @xml = read_data_file("volume_image.xml")
25
+ @json = read_data_file("volume_image.json")
26
26
  end
27
27
 
28
28
  it "can be constructed from XML and JSON" do
@@ -21,8 +21,8 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
21
21
  describe "Volume model" do
22
22
 
23
23
  before do
24
- @xml = IO::read(File::join(DATA_DIR, "volume.xml"))
25
- @json = IO::read(File::join(DATA_DIR, "volume.json"))
24
+ @xml = read_data_file("volume.xml")
25
+ @json = read_data_file("volume.json")
26
26
  end
27
27
 
28
28
  it "can be constructed from XML and JSON" do
@@ -21,8 +21,8 @@ require_relative '../spec_helper.rb' if require 'minitest/autorun'
21
21
  describe "Volume Template model" do
22
22
 
23
23
  before do
24
- @xml = IO::read(File::join(DATA_DIR, "volume_template.xml"))
25
- @json = IO::read(File::join(DATA_DIR, "volume_template.json"))
24
+ @xml = read_data_file("volume_template.xml")
25
+ @json = read_data_file("volume_template.json")
26
26
  end
27
27
 
28
28
  it "can be constructed from XML and JSON" do
@@ -32,6 +32,10 @@ def parse_xml(xml, opts = {})
32
32
  XmlSimple.xml_in(xml, opts)
33
33
  end
34
34
 
35
+ def read_data_file(name)
36
+ IO::read(File::join(DATA_DIR, name))
37
+ end
38
+
35
39
  class HashCmp
36
40
 
37
41
  IGNORED_KEYS = [ "resourceURI" ]
@@ -69,8 +69,10 @@ describe Deltacloud::Collections::Instances do
69
69
  json['instance'].wont_be_empty
70
70
  Instance.attributes.each do |attr|
71
71
  attr = attr.to_s.gsub(/_id$/,'') if attr.to_s =~ /_id$/
72
- next if ['authn_error', 'firewalls', 'keyname', 'username', 'password'].include?(attr.to_s)
72
+ next if ['launch_time', 'authn_error', 'firewalls', 'keyname', 'username', 'password', 'instance_profile'].include?(attr.to_s)
73
73
  json['instance'].keys.must_include attr.to_s
74
+ json['instance'].keys.must_include 'create_image'
75
+ json['instance'].keys.must_include 'hardware_profile'
74
76
  end
75
77
  end
76
78
  end
@@ -1,5 +1,3 @@
1
- =begin
2
-
3
1
  # TODO: This test require full access to 'kill' command and also
4
2
  # ability to execute the actual launcher.
5
3
  #
@@ -39,9 +37,10 @@ def wait_for_port_open(port)
39
37
  end
40
38
 
41
39
  def kill_process(pid)
42
- Process.kill('TERM', pid) rescue ''
43
40
  # Die!
41
+ puts "Sending KILL to #{pid}"
44
42
  Process.kill('KILL', pid) rescue ''
43
+ sleep(1)
45
44
  end
46
45
 
47
46
  describe "deltacloudd" do
@@ -104,5 +103,4 @@ describe "deltacloudd" do
104
103
  @pids.map { |pid| kill_process(pid) }
105
104
  end
106
105
 
107
- end
108
- =end
106
+ end unless ENV['TRAVIS']
@@ -45,4 +45,11 @@ describe 'Ec2Driver Images' do
45
45
  @driver.image(:id => 'unknown').must_be_nil
46
46
  end
47
47
 
48
+ it 'must advertise the image storage_type' do
49
+ VCR.insert_cassette 'test_0004_must_allow_to_retrieve_single_image'
50
+ @driver.image(:id => 'ami-aecd60c7').wont_be_nil
51
+ @driver.image(:id => 'ami-aecd60c7').root_type.wont_be_nil
52
+ @driver.image(:id => 'ami-aecd60c7').root_type.must_equal 'persistent'
53
+ end
54
+
48
55
  end
@@ -5,6 +5,13 @@ require_relative 'common'
5
5
 
6
6
  describe 'GoGridDriver Images' do
7
7
 
8
+ def credentials
9
+ {
10
+ :user => "04825b9fb0826b0b",
11
+ :password => "gogrid_deltacloud_te"
12
+ }
13
+ end
14
+
8
15
  before do
9
16
  @driver = Deltacloud::new(:gogrid, credentials)
10
17
  VCR.insert_cassette __name__
@@ -8,7 +8,7 @@ describe 'OpenStackDriver Instances' do
8
8
  {
9
9
  :user => "foo@fakedomain.eu+foo@fakedomain.eu-default-tenant",
10
10
  :password => "1234fake56789",
11
- :provider => "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/"
11
+ :provider => "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/;az-1.region-a.geo-1"
12
12
  }
13
13
  end
14
14
 
@@ -33,20 +33,20 @@ describe 'OpenStackDriver Instances' do
33
33
  end
34
34
 
35
35
  it 'must allow to filter instances' do
36
- instances = @driver.instances :id => '806837'
36
+ instances = @driver.instances :id => '815215'
37
37
  instances.wont_be_empty
38
38
  instances.must_be_kind_of Array
39
39
  instances.size.must_equal 1
40
40
  puts instances.inspect
41
- instances.first.id.must_equal '806837'
41
+ instances.first.id.must_equal '815215'
42
42
  @driver.instances(:id => 'unknown').must_be_empty
43
43
  end
44
44
 
45
45
  it 'must allow to retrieve single instance' do
46
- instance = @driver.instance :id => '806837'
46
+ instance = @driver.instance :id => '815215'
47
47
  instance.wont_be_nil
48
- instance.id.must_equal '806837'
49
- instance.name.must_equal 'Server-1355225740-az-2-region-a-geo-1'
48
+ instance.id.must_equal '815215'
49
+ instance.name.must_equal 'server2013-02-13 13:06:46 +0200'
50
50
  instance.state.wont_be_empty
51
51
  instance.owner_id.must_equal 'foo@fakedomain.eu'
52
52
  instance.realm_id.wont_be_empty
@@ -56,9 +56,9 @@ describe 'OpenStackDriver Instances' do
56
56
  end
57
57
 
58
58
  it 'must allow to create and destroy an instance' do
59
- instance = @driver.create_instance '47940', :hwp_id => '100'
59
+ instance = @driver.create_instance '78265', :hwp_id => '100', :realm_id => "az-1.region-a.geo-1"
60
60
  instance.wont_be_nil
61
- instance.image_id.must_equal '47940'
61
+ instance.image_id.must_equal '78265'
62
62
  instance.name.wont_be_empty
63
63
  instance.wait_for!(@driver, record_retries('inst_launch')) { |i| i.is_running? }
64
64
  puts @driver.destroy_instance(instance.id).inspect
@@ -5,6 +5,15 @@ require_relative 'common.rb'
5
5
 
6
6
  describe 'OpenStackDriver Realms' do
7
7
 
8
+ def credentials
9
+ {
10
+ :user => "foo@fakedomain.eu+foo@fakedomain.eu-default-tenant",
11
+ :password => "1234fake56789",
12
+ :provider => "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/"
13
+ }
14
+ end
15
+
16
+
8
17
  before do
9
18
  @driver = Deltacloud::new(:openstack, credentials)
10
19
  VCR.insert_cassette __name__
@@ -14,7 +23,7 @@ describe 'OpenStackDriver Realms' do
14
23
  VCR.eject_cassette
15
24
  end
16
25
 
17
- it 'must throw error when wrong credentials' do
26
+ it 'must throw error when GET Realms with wrong credentials' do
18
27
  Proc.new do
19
28
  @driver.backend.images(OpenStruct.new(:user => 'unknown+wrong', :password => 'wrong'))
20
29
  end.must_raise Deltacloud::Exceptions::AuthenticationFailure, 'Authentication Failure'
@@ -25,20 +34,11 @@ describe 'OpenStackDriver Realms' do
25
34
  @driver.realms.first.must_be_kind_of Realm
26
35
  end
27
36
 
28
- it 'must allow to filter realms' do
29
- realms = @driver.realms :id => 'default'
30
- realms.wont_be_empty
31
- realms.must_be_kind_of Array
32
- realms.size.must_equal 1
33
- realms.first.id.must_equal 'default'
34
- @driver.realms(:id => 'unknown').must_be_empty
35
- end
36
-
37
37
  it 'must allow to retrieve single realm' do
38
- realm = @driver.realm :id => 'default'
38
+ realm_id = @driver.realms.first.id
39
+ realm = @driver.realm :id => realm_id
39
40
  realm.wont_be_nil
40
- realm.id.must_equal 'default'
41
- realm.limit.wont_be_empty
41
+ realm.id.must_equal realm_id
42
42
  realm.state.must_equal 'AVAILABLE'
43
43
  @driver.realm(:id => 'unknown').must_be_nil
44
44
  end
@@ -1,6 +1,7 @@
1
1
  %error{:url => "#{request.env['REQUEST_URI']}", :status => "#{response.status}"}
2
2
  %backend{ :driver => driver_symbol, :provider => "#{Thread::current[:provider] || ENV['API_PROVIDER'] || 'default'}" }
3
- %backtrace=cdata(@error.backtrace.join("\n"))
3
+ - if @error.respond_to?(:backtrace) and !@error.backtrace.nil?
4
+ %backtrace=cdata(@error.backtrace.join("\n"))
4
5
  - if params
5
6
  %request
6
7
  - params.each do |k, v|
@@ -21,11 +21,14 @@
21
21
  %li{ :'data-role' => 'list-divider'} Creation Time
22
22
  %li
23
23
  %p{ :'data-role' => 'fieldcontain'}=@image.creation_time
24
+ %li{ :'data-role' => 'list-divider'} Root Device Type
25
+ %li
26
+ %p{ :'data-role' => 'fieldcontain'}=@image.root_type
24
27
  %li{ :'data-role' => 'list-divider'} Architecture
25
28
  %li
26
29
  %p{ :'data-role' => 'fieldcontain'}=@image.architecture
27
30
  - if @image.hardware_profiles
28
- %li{ :'data-role' => 'list-divider'} Hardware Profiles
31
+ %li{ :'data-role' => 'list-divider'} Compatible Hardware Profiles
29
32
  %li
30
33
  %div{ :'data-role' => 'controlgroup', :'data-type' => "horizontal" }
31
34
  - @image.hardware_profiles.each do |hwp|
@@ -13,6 +13,7 @@
13
13
  %hardware_profiles
14
14
  - @image.hardware_profiles.each do |profile|
15
15
  %hardware_profile{ :href => hardware_profile_url(profile.id), :id => profile.id, :rel => :hardware_profile }
16
+ %root_type=@image.root_type
16
17
  %actions
17
18
  %link{ :rel => 'create_instance', :method => :post, :href => "#{instances_url};image_id=#{@image.id}"}
18
19
  - if driver.respond_to? :destroy_image
@@ -2,7 +2,7 @@
2
2
  =subheader "#{@image.id}"
3
3
 
4
4
  .hidden_content
5
- - @hardware_profiles.each do |profile|
5
+ - @image.hardware_profiles.each do |profile|
6
6
  %div{ :'data-role' => :fieldcontain, :id => "hwp_properties_#{profile.name}", :class => 'property_block'}
7
7
  - profile.properties.reject { |prop| prop.fixed? }.each do |prop|
8
8
  %label{ :for => "#{prop.param}_#{profile.name}", :class => 'ui-input-text' }=prop.name
@@ -12,6 +12,9 @@
12
12
  %li{ :'data-role' => 'list-divider'} State
13
13
  %li
14
14
  %p{ :'data-role' => 'fieldcontain'}=@instance.state
15
+ %li{ :'data-role' => 'list-divider'} Launch Time
16
+ %li
17
+ %p{ :'data-role' => 'fieldcontain'}=@instance.launch_time
15
18
  %li{ :'data-role' => 'list-divider'} Image
16
19
  %li
17
20
  %a{ :href => image_url(@instance.image_id), :'data-ajax' => 'false' }=@instance.image_id
@@ -10,4 +10,6 @@
10
10
  %img{ :class => 'ui-link-thumb', :src => '/images/realm.png'}
11
11
  %h3= realm.name
12
12
  %p=[realm.id, realm.limit].join(', ')
13
+ -if realm.resource_types
14
+ %p=realm.resource_types.join(",")
13
15
  %span{ :class => 'ui-li-count'}=realm.state
@@ -15,3 +15,7 @@
15
15
  %li{ :'data-role' => 'list-divider'} Limit
16
16
  %li
17
17
  %p{ :'data-role' => 'fieldcontain'}=@realm.limit
18
+ - if @realm.resource_types
19
+ %li{ :'data-role' => 'list-divider'} Resource Types
20
+ %li
21
+ %p{ :'data-role' => 'fieldcontain'}=@realm.resource_types
@@ -9,3 +9,6 @@
9
9
  %limit<
10
10
  =cdata do
11
11
  =@realm.limit
12
+ - @realm.resource_types.each do |r|
13
+ %resource_type<
14
+ =r
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deltacloud-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-05 00:00:00.000000000 Z
12
+ date: 2013-02-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -108,13 +108,13 @@ dependencies:
108
108
  - !ruby/object:Gem::Version
109
109
  version: '0'
110
110
  - !ruby/object:Gem::Dependency
111
- name: json
111
+ name: json_pure
112
112
  requirement: !ruby/object:Gem::Requirement
113
113
  none: false
114
114
  requirements:
115
115
  - - ! '>='
116
116
  - !ruby/object:Gem::Version
117
- version: 1.1.9
117
+ version: 1.5.0
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
@@ -122,7 +122,7 @@ dependencies:
122
122
  requirements:
123
123
  - - ! '>='
124
124
  - !ruby/object:Gem::Version
125
- version: 1.1.9
125
+ version: 1.5.0
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: net-ssh
128
128
  requirement: !ruby/object:Gem::Requirement
@@ -210,7 +210,7 @@ dependencies:
210
210
  requirements:
211
211
  - - ! '>='
212
212
  - !ruby/object:Gem::Version
213
- version: 0.0.16
213
+ version: 0.0.17
214
214
  type: :runtime
215
215
  prerelease: false
216
216
  version_requirements: !ruby/object:Gem::Requirement
@@ -218,7 +218,7 @@ dependencies:
218
218
  requirements:
219
219
  - - ! '>='
220
220
  - !ruby/object:Gem::Version
221
- version: 0.0.16
221
+ version: 0.0.17
222
222
  - !ruby/object:Gem::Dependency
223
223
  name: aws
224
224
  requirement: !ruby/object:Gem::Requirement
@@ -226,7 +226,7 @@ dependencies:
226
226
  requirements:
227
227
  - - ! '>='
228
228
  - !ruby/object:Gem::Version
229
- version: 2.6.0
229
+ version: 2.7.0
230
230
  type: :runtime
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
@@ -234,7 +234,7 @@ dependencies:
234
234
  requirements:
235
235
  - - ! '>='
236
236
  - !ruby/object:Gem::Version
237
- version: 2.6.0
237
+ version: 2.7.0
238
238
  - !ruby/object:Gem::Dependency
239
239
  name: waz-storage
240
240
  requirement: !ruby/object:Gem::Requirement
@@ -354,7 +354,7 @@ dependencies:
354
354
  requirements:
355
355
  - - ! '>='
356
356
  - !ruby/object:Gem::Version
357
- version: 1.0.7
357
+ version: 1.0.9
358
358
  type: :runtime
359
359
  prerelease: false
360
360
  version_requirements: !ruby/object:Gem::Requirement
@@ -362,7 +362,7 @@ dependencies:
362
362
  requirements:
363
363
  - - ! '>='
364
364
  - !ruby/object:Gem::Version
365
- version: 1.0.7
365
+ version: 1.0.9
366
366
  - !ruby/object:Gem::Dependency
367
367
  name: savon
368
368
  requirement: !ruby/object:Gem::Requirement
@@ -410,7 +410,7 @@ files:
410
410
  - Rakefile
411
411
  - deltacloud-core.gemspec
412
412
  - config.ru
413
- - config/drivers/aruba.yaml
413
+ - config/drivers/arubacloud.yaml
414
414
  - config/drivers/azure.yaml
415
415
  - config/drivers/ec2.yaml
416
416
  - config/drivers/rackspace.yaml
@@ -454,8 +454,10 @@ files:
454
454
  - lib/cimi/server.rb
455
455
  - lib/cimi/dependencies.rb
456
456
  - lib/cimi/models.rb
457
+ - lib/cimi/helpers/select_helper.rb
457
458
  - lib/cimi/helpers/cimi_helper.rb
458
459
  - lib/cimi/helpers/database_helper.rb
460
+ - lib/cimi/helpers/filter_helper.rb
459
461
  - lib/cimi/models/volume_image.rb
460
462
  - lib/cimi/models/network_port_configuration.rb
461
463
  - lib/cimi/models/network.rb
@@ -468,6 +470,7 @@ files:
468
470
  - lib/cimi/models/machine_template.rb
469
471
  - lib/cimi/models/network_port.rb
470
472
  - lib/cimi/models/forwarding_group_template.rb
473
+ - lib/cimi/models/resource.rb
471
474
  - lib/cimi/models/machine.rb
472
475
  - lib/cimi/models/volume_configuration.rb
473
476
  - lib/cimi/models/cloud_entry_point.rb
@@ -589,6 +592,7 @@ files:
589
592
  - lib/deltacloud/drivers/mock/mock_driver.rb
590
593
  - lib/deltacloud/drivers/rimuhosting/rimuhosting_client.rb
591
594
  - lib/deltacloud/drivers/rimuhosting/rimuhosting_driver.rb
595
+ - lib/deltacloud/drivers/arubacloud/arubacloud_driver.rb
592
596
  - lib/deltacloud/drivers/ec2/aws_vpc_monkey_patch.rb
593
597
  - lib/deltacloud/drivers/ec2/ec2_driver.rb
594
598
  - lib/deltacloud/drivers/rackspace/rackspace_driver.rb
@@ -605,7 +609,6 @@ files:
605
609
  - lib/deltacloud/drivers/cimi_features.rb
606
610
  - lib/deltacloud/drivers/exceptions.rb
607
611
  - lib/deltacloud/drivers/terremark/terremark_driver.rb
608
- - lib/deltacloud/drivers/aruba/aruba_driver.rb
609
612
  - lib/sinatra.rb
610
613
  - lib/db/volume_template.rb
611
614
  - lib/db/machine_template.rb
@@ -671,6 +674,7 @@ files:
671
674
  - tests/cimi/collections/machines_test.rb
672
675
  - tests/cimi/collections/machine_images_test.rb
673
676
  - tests/cimi/collections/url_helper_test.rb
677
+ - tests/cimi/db/entity_test.rb
674
678
  - tests/cimi/db/schema_test.rb
675
679
  - tests/cimi/db/database_helper_test.rb
676
680
  - tests/cimi/db/db_helper.rb
@@ -945,7 +949,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
945
949
  version: '0'
946
950
  segments:
947
951
  - 0
948
- hash: -2467979139256162930
952
+ hash: -2269388389884938239
949
953
  requirements: []
950
954
  rubyforge_project:
951
955
  rubygems_version: 1.8.23
@@ -959,6 +963,7 @@ test_files:
959
963
  - tests/cimi/collections/machines_test.rb
960
964
  - tests/cimi/collections/machine_images_test.rb
961
965
  - tests/cimi/collections/url_helper_test.rb
966
+ - tests/cimi/db/entity_test.rb
962
967
  - tests/cimi/db/schema_test.rb
963
968
  - tests/cimi/db/database_helper_test.rb
964
969
  - tests/helpers/rack/rack_etag_test.rb