quickmox 0.2.3 → 0.2.4

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: 46d7e3daec579a8cd6f27fa5a9524599f3a1722d
4
- data.tar.gz: dfdae97399909240415720fa7c6a6cde9459a143
3
+ metadata.gz: eb5b87ff68ff6bc96b3f8d8d24d4b893fa4892bd
4
+ data.tar.gz: 7780b26ea35c907cee856ae85571d7ca5bcc5c6c
5
5
  SHA512:
6
- metadata.gz: fb85a59fc8b7da2eff1f524ea3445d8bbf52c8fb3660f46c8fb2ffd54ad27df2bde15a4607515466687092ce01d4e19d577a4db528fe234ff8202299c874d685
7
- data.tar.gz: a9e01027c746cd8245e9303172b47316aa5a68b0a511f2a16c672b675f22756619b2a9f6771daebbf937c2002057fade001326e4b57397c63f09a26ad9ea116e
6
+ metadata.gz: 0fe0df2e53ee2b41468e7a1261bc9cc5c52d7220a4c2e308709cb903423a7828844ad3c13e4aaa52fed6167a430b39337ae8602cb13b210c9e977d05a34da15c
7
+ data.tar.gz: 1d6b00c015dae3125486b8e7a410695b0f7f9a76525de83920fdcac222129ca0e17ba17278e23754c54531de8c9585d2cb599eb6ad77d708290bd7412b2ecb03
data/lib/quickmox/host.rb CHANGED
@@ -31,7 +31,7 @@ module Quickmox
31
31
  end
32
32
 
33
33
  def connect
34
- @session.connect
34
+ handle_exceptions { @session.connect }
35
35
  self
36
36
  end
37
37
 
@@ -40,50 +40,65 @@ module Quickmox
40
40
  end
41
41
 
42
42
  def scan
43
- guestlist.each do |id|
44
- @guests << Guest.new(id, self)
43
+ handle_exceptions do
44
+ guestlist.each do |id|
45
+ @guests << Guest.new(id, self)
46
+ end
47
+ @guests.scan
45
48
  end
46
- @guests.scan
47
49
  self
48
50
  end
49
51
 
50
52
  def guestlist
51
- list = Array.new
52
- table = session.exec!('qm list')
53
- lines = table.split("\n")
54
- lines.each do |line|
55
- if line =~ /^ *([0-9]{1,4}) */
56
- list << $1
53
+ list = String.new
54
+ handle_exceptions do
55
+ list = Array.new
56
+ table = session.exec!('qm list')
57
+ lines = table.split("\n")
58
+ lines.each do |line|
59
+ if line =~ /^ *([0-9]{1,4}) */
60
+ list << $1
61
+ end
57
62
  end
58
63
  end
59
64
  list
60
65
  end
61
66
 
62
67
  def localname
63
- session.exec!('hostname').chomp
68
+ handle_exceptions { session.exec!('hostname').chomp }
64
69
  end
65
70
 
66
71
  def uptime
67
- session.exec!('uptime').chomp
72
+ handle_exceptions { session.exec!('uptime').chomp }
68
73
  end
69
74
 
70
75
  def close
71
- disconnect
76
+ handle_exceptions { disconnect }
72
77
  end
73
78
 
74
79
  def disconnect
75
- session.close
80
+ handle_exceptions { session.close }
76
81
  end
77
82
 
78
83
  def is_proxmox?
79
- output = session.exec!('qm list')
84
+ output = String.new
85
+ handle_exceptions { output = session.exec!('qm list') }
80
86
  (output =~ /VMID NAME/) ? true : false
81
87
  end
82
88
 
83
89
  def exec(cmd)
84
- session.exec!(cmd).chomp
90
+ handle_exceptions {session.exec!(cmd).chomp}
85
91
  end
86
92
 
93
+ private
94
+
95
+ def handle_exceptions
96
+ begin
97
+ yield
98
+ rescue => e
99
+ raise HostError, "Exception" #" in Quickmox::Host while handling host #{@session.host}: #{e}"
100
+ end
101
+ end
87
102
 
88
103
  end
89
104
  end
@@ -36,7 +36,6 @@ module Quickmox
36
36
  handle_exceptions do
37
37
  session.exec!(cmd).chomp
38
38
  end
39
-
40
39
  end
41
40
 
42
41
  private
@@ -1,3 +1,3 @@
1
1
  module Quickmox
2
- VERSION = '0.2.3'
2
+ VERSION = '0.2.4'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quickmox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - J.K.Valk