gce-metadata 0.2.1 → 0.2.2

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: 640073981419029437f97f258a3e62a618d6e645
4
- data.tar.gz: 5fe7ed5e385e13e41d891ffe7bdab49e755284ad
3
+ metadata.gz: 8f12f2c1c07f95df09af969b4f7aaeeacf0da830
4
+ data.tar.gz: ebcbe5062d9fbd3bd755ddd75e6f73885874dac4
5
5
  SHA512:
6
- metadata.gz: a5895f5688d226ce309297fdd90eaa8235ac682a3df867bebcee02e759e9ebd65e8acd3257cc8d4e7c54895aeafe647f7e7d0c31e427e16ed090bfb7bb63fd32
7
- data.tar.gz: cb7dbc0de5f1e761d44c0e3f7f8733df70fa31f3dcc1a0fd63ff130d3ac4492c41158b5d0afef2f7a89e125e0d7605b9294e36e642e9c77bc90776dfcc1fafb1
6
+ metadata.gz: 60f2a33e6d305cb7a912d546a8711622aae3cfc09477cbdc5c8ec7e1c293be937d41aa38f8e3353e29701cedb5a235bf00938f2eab6393ca772627c426dfa8be
7
+ data.tar.gz: 96787afb83ef25a03084092d44a8443ad996ab338846fcafa9c17c968df1462a33c4327b52a466cd14e68bfb2b975212f5b33acc687903f047d32d6c0ad4d8b2
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gce-metadata (0.2.1)
4
+ gce-metadata (0.2.2)
5
5
  awesome_print
6
6
  ec2-metadata (~> 0.2, >= 0.2.2)
7
7
 
@@ -9,7 +9,11 @@ module GCEMetadata
9
9
  def initialize(path, default_child_key = nil)
10
10
  @path = path
11
11
  @default_child_key = default_child_key
12
- end
12
+ end
13
+
14
+ def class_name
15
+ self.class.name.gsub(/^GCEMetadata/, '').gsub(/^:+/,'')
16
+ end
13
17
 
14
18
  def children
15
19
  @children ||= {}
@@ -34,7 +38,7 @@ module GCEMetadata
34
38
  alias_method :keys, :child_keys
35
39
 
36
40
  def get(child_key)
37
- logging("#{self.class.name}.get(#{child_key.inspect})") do
41
+ logging("#{class_name}.get(#{child_key.inspect})") do
38
42
  child_key = GCEMetadata.formalize_key(child_key)
39
43
  if children.has_key?(child_key)
40
44
  result = children[child_key]
@@ -86,8 +90,6 @@ module GCEMetadata
86
90
  end
87
91
  end
88
92
 
89
- alias_method :[], :get
90
-
91
93
  def default_child
92
94
  return @default_child if @default_child
93
95
  logging("default_child") do
@@ -32,7 +32,7 @@ module GCEMetadata
32
32
  v = (api_version || '').strip
33
33
  keys = GCEMetadata.instance.keys
34
34
  unless keys.include?(v.gsub(%r'([^/])$', '\1/'))
35
- puts("#{self.class.name}.instance.keys\n#{keys.ai}")
35
+ puts("#{class_name}.instance.keys\n#{keys.ai}")
36
36
  raise ArgumentError, "API version must be one of #{GCEMetadata.instance.keys.inspect} but was #{api_version.inspect}"
37
37
  end
38
38
  show_yaml_path_if_loaded
@@ -14,7 +14,7 @@ module GCEMetadata
14
14
  attr_accessor :read_timeout_sec
15
15
 
16
16
  def get(path)
17
- logging("GCEMetadata.get(#{path.inspect})") do
17
+ logging("get(#{path.inspect})") do
18
18
  http = Net::HTTP.new(DEFAULT_HOST)
19
19
  http.open_timeout = self.open_timeout_sec
20
20
  http.read_timeout = self.read_timeout_sec
@@ -1,4 +1,4 @@
1
1
  module GCEMetadata
2
2
  # gce-metadata version
3
- VERSION = '0.2.1'
3
+ VERSION = '0.2.2'
4
4
  end
data/lib/gce_metadata.rb CHANGED
@@ -18,6 +18,9 @@ module GCEMetadata
18
18
  extend HttpClient
19
19
 
20
20
  class << self
21
+ attr_accessor :debug
22
+ @debug = false
23
+
21
24
  def instance
22
25
  @instance ||= Root.new['computeMetadata']
23
26
  end
@@ -51,14 +54,14 @@ module GCEMetadata
51
54
  def logging(msg)
52
55
  @indent ||= 0
53
56
  disp = (" " * @indent) << msg
54
- # puts(disp)
57
+ puts(disp) if @debug
55
58
  @indent += 2
56
59
  begin
57
60
  result = yield
58
61
  ensure
59
62
  @indent -= 2
60
63
  end
61
- # puts "#{disp} => #{result.inspect}"
64
+ puts "#{disp} => #{result.inspect}" if @debug
62
65
  result
63
66
  end
64
67
  end
data/spec/gce-metadata.rb CHANGED
@@ -1,4 +1,8 @@
1
1
  require 'gce_metadata'
2
2
  require 'awesome_print'
3
3
 
4
- ap GCEMetadata['instance']
4
+ GCEMetadata.debug = true
5
+ start = Time.now
6
+ data = GCEMetadata[GCEMetadata::DEFAULT_REVISION]['instance'].to_hash
7
+ stop = Time.now
8
+ puts "#{(stop-start)}s\n#{data.ai}\n"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gce-metadata
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christo De Lange