yao 0.3.6 → 0.3.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 60c1114d4626aed1840dea9429543222ce8a0526
4
- data.tar.gz: e53ef4409bcd048d6f3fd1fc719b2900c7b8e392
3
+ metadata.gz: d43c067685907e1e430dc8e003d9817fdf16f260
4
+ data.tar.gz: 80d85a73f095c4bcb7f4805cc7aa23e548c77493
5
5
  SHA512:
6
- metadata.gz: '025418597e6b6f0bb2b8dae6591773a927354ba2215511b032ef17d0a57710bbc7fede8f5f66ac994c82336646abe570ce794f6c317f773d3056082508ae980f'
7
- data.tar.gz: 2ef45a2b54da4430835e03569a772a6af5779736bfcf91c25b5575863bc1af33595596cf5484b17253dd45f3814fad83584dcde1c47d3567e6777cd06c94c55f
6
+ metadata.gz: c3f5118243d9ed662b34e981dcd15f4889475eeab02b5cfcea86af12e5afe677b873f538cf4e628ca9546ca0b03fc10ad49e01df0f5a9d00194d579b1c683d11
7
+ data.tar.gz: 499c01244f7d5cda681ba5f0ad0baf68bbea8f9784d14a01630ef3d4cc8668ae2941509bf9de32bed2fa988c47861d8c667855cbc73150627f93a9120769389a
@@ -4,14 +4,6 @@ module Yao::Resources
4
4
  class Aggregates < Base
5
5
  friendly_attributes :availability_zone, :deleted, :hosts, :metadata, :name
6
6
 
7
- def created_at
8
- Date.parse(self["created_at"])
9
- end
10
-
11
- def updated_at
12
- Date.parse(self["updated_at"]) if self["updated_at"]
13
- end
14
-
15
7
  def deleted_at
16
8
  Date.parse(self["deleted_at"]) if self["deleted_at"]
17
9
  end
@@ -6,6 +6,9 @@ module Yao::Resources
6
6
  def self.friendly_attributes(*names)
7
7
  names.map(&:to_s).each do |name|
8
8
  define_method(name) do
9
+ if !@data.key?(name) && id
10
+ @data = self.class.get(id)
11
+ end
9
12
  self[name]
10
13
  end
11
14
  end
@@ -53,13 +56,13 @@ module Yao::Resources
53
56
  end
54
57
 
55
58
  def created
56
- if date = self["created"]
59
+ if date = self["created"] || self["created_at"]
57
60
  Time.parse(date)
58
61
  end
59
62
  end
60
63
 
61
64
  def updated
62
- if date = self["updated"]
65
+ if date = self["updated"] || self["updated_at"]
63
66
  Time.parse(date)
64
67
  end
65
68
  end
@@ -3,12 +3,16 @@ module Yao::Resources
3
3
  friendly_attributes :hypervisor_hostname, :hypervisor_type, :hypervisor_version, :running_vms, :current_workload,
4
4
  :vcpus, :vcpus_used,
5
5
  :memory_mb, :memory_mb_used, :free_disk_gb,
6
- :local_gb, :local_gb_used, :free_disk_gb
6
+ :local_gb, :local_gb_used, :free_disk_gb, :status
7
7
 
8
8
  def cpu_info
9
9
  JSON.parse self["cpu_info"]
10
10
  end
11
11
 
12
+ def enabled?
13
+ self['status'] == 'enabled'
14
+ end
15
+
12
16
  alias hostname hypervisor_hostname
13
17
  alias type hypervisor_hostname
14
18
  alias version hypervisor_version
@@ -1,19 +1,9 @@
1
- require 'date'
2
-
3
1
  module Yao::Resources
4
2
  class LoadBalancer < Base
5
3
  friendly_attributes :provider, :description, :admin_state_up, :provisioning_status,
6
4
  :pools, :vip_address,
7
5
  :operationg_status, :name
8
6
 
9
- def created_at
10
- Date.parse(self["created_at"])
11
- end
12
-
13
- def updated_at
14
- Date.parse(self["updated_at"])
15
- end
16
-
17
7
  def project
18
8
  Yao::Tenant.find self["project_id"]
19
9
  end
@@ -1,4 +1,3 @@
1
- require 'date'
2
1
  module Yao::Resources
3
2
  class LoadBalancerHealthMonitor < Base
4
3
  friendly_attributes :name, :admin_state_up, :provisioning_status,
@@ -12,14 +11,6 @@ module Yao::Resources
12
11
  end
13
12
  end
14
13
 
15
- def created_at
16
- Date.parse(self["created_at"])
17
- end
18
-
19
- def updated_at
20
- Date.parse(self["updated_at"])
21
- end
22
-
23
14
  self.service = "load-balancer"
24
15
  self.api_version = "v2.0"
25
16
  self.resource_name = "healthmonitor"
@@ -1,4 +1,3 @@
1
- require 'date'
2
1
  module Yao::Resources
3
2
  class LoadBalancerListener < Base
4
3
  friendly_attributes :description, :admin_state_up,
@@ -17,14 +16,6 @@ module Yao::Resources
17
16
  end
18
17
  end
19
18
 
20
- def created_at
21
- Date.parse(self["created_at"])
22
- end
23
-
24
- def updated_at
25
- Date.parse(self["updated_at"])
26
- end
27
-
28
19
  def default_pool
29
20
  Yao::LoadBalancerPool.find self["default_pool_id"]
30
21
  end
@@ -1,4 +1,3 @@
1
- require 'date'
2
1
  module Yao::Resources
3
2
  class LoadBalancerPool < Base
4
3
  friendly_attributes :lb_algorithm, :protocol, :description,
@@ -11,14 +10,6 @@ module Yao::Resources
11
10
  end
12
11
  end
13
12
 
14
- def created_at
15
- Date.parse(self["created_at"])
16
- end
17
-
18
- def updated_at
19
- Date.parse(self["updated_at"])
20
- end
21
-
22
13
  def listeners
23
14
  self["listeners"].map do |listener|
24
15
  Yao::LoadBalancerListener.find listener["id"]
@@ -1,4 +1,3 @@
1
- require 'date'
2
1
  module Yao::Resources
3
2
  class LoadBalancerPoolMember < Base
4
3
  friendly_attributes :monitor_port, :name, :weight,
@@ -14,14 +13,6 @@ module Yao::Resources
14
13
  Yao::Subnet.find self["subnet_id"]
15
14
  end
16
15
 
17
- def created_at
18
- Date.parse(self["created_at"])
19
- end
20
-
21
- def updated_at
22
- Date.parse(self["updated_at"])
23
- end
24
-
25
16
  self.service = "load-balancer"
26
17
  self.api_version = "v2.0"
27
18
  self.resource_name = "member"
data/lib/yao/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Yao
2
- VERSION = "0.3.6"
2
+ VERSION = "0.3.7"
3
3
  end
@@ -1,3 +1,4 @@
1
+ require "time"
1
2
  require "date"
2
3
 
3
4
  class TestRole < Test::Unit::TestCase
@@ -19,8 +20,8 @@ class TestRole < Test::Unit::TestCase
19
20
  assert_equal(aggregates.hosts, ["host1", "host2"])
20
21
  assert_equal(aggregates.metadata, {"foo" => "bar"})
21
22
  assert_equal(aggregates.name, "nova")
22
- assert_equal(aggregates.created_at, Date.parse("2015-08-27T09:49:58-05:00"))
23
- assert_equal(aggregates.created_at, Date.parse("2015-08-27T09:49:58-05:00"))
24
- assert_equal(aggregates.created_at, Date.parse("2015-08-27T09:49:58-05:00"))
23
+ assert_equal(aggregates.created, Time.parse("2015-08-27T09:49:58-05:00"))
24
+ assert_equal(aggregates.updated, Time.parse("2015-08-27T09:49:58-05:00"))
25
+ assert_equal(aggregates.deleted_at, Date.parse("2015-08-27T09:49:58-05:00"))
25
26
  end
26
27
  end
@@ -0,0 +1,15 @@
1
+ class TestResourceBase < Test::Unit::TestCase
2
+ def setup
3
+ stub(Yao::Resources::Base).get { Yao::Resources::Base.new({"id" => "foor", "name" => "bar"}) }
4
+ end
5
+
6
+ def test_friendly_attributes
7
+ base = Yao::Resources::Base.new({"id" => "foor"})
8
+ base.class.friendly_attributes(:name)
9
+ assert_equal(base.name, "bar")
10
+
11
+ base = Yao::Resources::Base.new({"name" => "bar"})
12
+ base.class.friendly_attributes(:name)
13
+ assert_equal(base.name, "bar")
14
+ end
15
+ end
@@ -0,0 +1,12 @@
1
+ require "time"
2
+
3
+ class TestHypervisor < Test::Unit::TestCase
4
+ def test_hypervisor
5
+ params = {
6
+ "status" => "enabled"
7
+ }
8
+
9
+ host = Yao::Hypervisor.new(params)
10
+ assert_equal(host.enabled?, true)
11
+ end
12
+ end
@@ -1,4 +1,4 @@
1
- require "date"
1
+ require "time"
2
2
 
3
3
  class TestRole < Test::Unit::TestCase
4
4
  def test_loadbalancer
@@ -22,7 +22,7 @@ class TestRole < Test::Unit::TestCase
22
22
  assert_equal(lb.vip_address, "198.51.100.1")
23
23
  assert_equal(lb.operationg_status, "ONLINE")
24
24
  assert_equal(lb.name, "greate loadbalancer")
25
- assert_equal(lb.created_at, Date.parse("2017-02-28T00:41:44"))
26
- assert_equal(lb.updated_at, Date.parse("2017-02-28T00:43:30"))
25
+ assert_equal(lb.created, Time.parse("2017-02-28T00:41:44"))
26
+ assert_equal(lb.updated, Time.parse("2017-02-28T00:43:30"))
27
27
  end
28
28
  end
@@ -1,13 +1,13 @@
1
- require "date"
1
+ require "time"
2
2
 
3
3
  class TestRole < Test::Unit::TestCase
4
4
  def test_loadbalancer_healtchmonitor
5
5
  params = {
6
6
  "name" => "super-pool-health-monitor",
7
7
  "admin_state_up" => true,
8
- "created_at" => "2017-05-11T23 =>53 =>47",
8
+ "created_at" => "2017-05-11T23:53:47",
9
9
  "provisioning_status" => "ACTIVE",
10
- "updated_at" => "2017-05-11T23 =>53 =>47",
10
+ "updated_at" => "2017-05-11T23:53:47",
11
11
  "delay" => 10,
12
12
  "expected_codes" => "200",
13
13
  "max_retries" => 1,
@@ -22,9 +22,9 @@ class TestRole < Test::Unit::TestCase
22
22
  healthmonitor = Yao::LoadBalancerHealthMonitor.new(params)
23
23
  assert_equal(healthmonitor.name, "super-pool-health-monitor")
24
24
  assert_equal(healthmonitor.admin_state_up, true)
25
- assert_equal(healthmonitor.created_at, Date.parse("2017-05-11T23:53:47"))
25
+ assert_equal(healthmonitor.created, Time.parse("2017-05-11T23:53:47"))
26
26
  assert_equal(healthmonitor.provisioning_status, "ACTIVE")
27
- assert_equal(healthmonitor.updated_at, Date.parse("2017-05-11T23:53:47"))
27
+ assert_equal(healthmonitor.updated, Time.parse("2017-05-11T23:53:47"))
28
28
  assert_equal(healthmonitor.delay, 10)
29
29
  assert_equal(healthmonitor.expected_codes, "200")
30
30
  assert_equal(healthmonitor.max_retries, 1)
@@ -1,4 +1,4 @@
1
- require "date"
1
+ require "time"
2
2
 
3
3
  class TestRole < Test::Unit::TestCase
4
4
  def test_loadbalancer_listener
@@ -40,8 +40,8 @@ class TestRole < Test::Unit::TestCase
40
40
  "X-Forwarded-Port" => "true",
41
41
  "X-Forwarded-For" => "true"
42
42
  })
43
- assert_equal(listener.created_at, Date.parse("2017-02-28T00:42:44"))
44
- assert_equal(listener.updated_at, Date.parse("2017-02-28T00:44:30"))
43
+ assert_equal(listener.created, Time.parse("2017-02-28T00:42:44"))
44
+ assert_equal(listener.updated, Time.parse("2017-02-28T00:44:30"))
45
45
  assert_equal(listener.operating_status, "ONLINE")
46
46
  assert_equal(listener.sni_container_refs, [
47
47
  "http://198.51.100.10:9311/v1/containers/a570068c-d295-4780-91d4-3046a325db51",
@@ -1,4 +1,4 @@
1
- require "date"
1
+ require "time"
2
2
 
3
3
  class TestRole < Test::Unit::TestCase
4
4
  def test_loadbalancer_pool
@@ -23,9 +23,9 @@ class TestRole < Test::Unit::TestCase
23
23
  assert_equal(pool.protocol, "HTTP")
24
24
  assert_equal(pool.description, "My round robin pool")
25
25
  assert_equal(pool.admin_state_up, true)
26
- assert_equal(pool.created_at, Date.parse("2017-04-13T18:14:44"))
26
+ assert_equal(pool.created, Time.parse("2017-04-13T18:14:44"))
27
27
  assert_equal(pool.provisioning_status, "ACTIVE")
28
- assert_equal(pool.updated_at, Date.parse("2017-04-13T23:08:12"))
28
+ assert_equal(pool.updated, Time.parse("2017-04-13T23:08:12"))
29
29
  assert_equal(pool.session_persistence, {
30
30
  "cookie_name" => nil,
31
31
  "type" => "SOURCE_IP"
@@ -1,4 +1,4 @@
1
- require "date"
1
+ require "time"
2
2
 
3
3
  class TestRole < Test::Unit::TestCase
4
4
  def test_loadbalancer_pool_member
@@ -7,10 +7,10 @@ class TestRole < Test::Unit::TestCase
7
7
  "name" => "web-server-1",
8
8
  "weight" => 20,
9
9
  "admin_state_up" => true,
10
- "created_at" => "2017-05-11T17 =>21 =>34",
10
+ "created_at" => "2017-05-11T17:21:34",
11
11
  "provisioning_status" => "ACTIVE",
12
12
  "monitor_address" => nil,
13
- "updated_at" => "2017-05-11T17 =>21 =>37",
13
+ "updated_at" => "2017-05-11T17:21:37",
14
14
  "address" => "192.0.2.16",
15
15
  "protocol_port" => 80,
16
16
  "operating_status" => "NO_MONITOR"
@@ -21,10 +21,10 @@ class TestRole < Test::Unit::TestCase
21
21
  assert_equal(member.name, "web-server-1")
22
22
  assert_equal(member.weight, 20)
23
23
  assert_equal(member.admin_state_up, true)
24
- assert_equal(member.created_at, Date.parse("2017-05-11T17:21:34"))
24
+ assert_equal(member.created, Time.parse("2017-05-11T17:21:34"))
25
25
  assert_equal(member.provisioning_status, "ACTIVE")
26
26
  assert_equal(member.monitor_address, nil)
27
- assert_equal(member.updated_at, Date.parse("2017-05-11T17:21:37"))
27
+ assert_equal(member.updated, Time.parse("2017-05-11T17:21:37"))
28
28
  assert_equal(member.address, "192.0.2.16")
29
29
  assert_equal(member.protocol_port, 80)
30
30
  assert_equal(member.operating_status, "NO_MONITOR")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yao
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6
4
+ version: 0.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Uchio, KONDO
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-07 00:00:00.000000000 Z
11
+ date: 2017-10-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -216,6 +216,8 @@ files:
216
216
  - test/fixtures/dummy.pem
217
217
  - test/support/auth_stub.rb
218
218
  - test/yao/resources/test_aggregates.rb
219
+ - test/yao/resources/test_base.rb
220
+ - test/yao/resources/test_hypervisor.rb
219
221
  - test/yao/resources/test_loadbalancer.rb
220
222
  - test/yao/resources/test_loadbalancer_healthmonitor.rb
221
223
  - test/yao/resources/test_loadbalancer_listener.rb
@@ -254,7 +256,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
254
256
  version: '0'
255
257
  requirements: []
256
258
  rubyforge_project:
257
- rubygems_version: 2.6.11
259
+ rubygems_version: 2.4.5
258
260
  signing_key:
259
261
  specification_version: 4
260
262
  summary: Yet Another OpenStack API Wrapper that rocks!!
@@ -264,6 +266,8 @@ test_files:
264
266
  - test/fixtures/dummy.pem
265
267
  - test/support/auth_stub.rb
266
268
  - test/yao/resources/test_aggregates.rb
269
+ - test/yao/resources/test_base.rb
270
+ - test/yao/resources/test_hypervisor.rb
267
271
  - test/yao/resources/test_loadbalancer.rb
268
272
  - test/yao/resources/test_loadbalancer_healthmonitor.rb
269
273
  - test/yao/resources/test_loadbalancer_listener.rb