fog-libvirt 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 73ae93cf9265f32976862d636f428a15e3f2251a
|
4
|
+
data.tar.gz: d2145c959320d0896a7bfb1adbc65f3832772a17
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 42e3e30eaa431dca165573516c8c987d4c7562e57820edb1b4aab8aa4ea78747dffce9e7232ea8be9feb65d342876a7b218b12d39bfd474544abd1e07168c9cc
|
7
|
+
data.tar.gz: 940aa734cf58a59b24d424b43418407e4ad6d04d3b84f7e9ac22fa7aef608208b7b2b2de4a92408d36969516e6b6ba194cbce01290654545ffd16aad073381a4
|
data/fog-libvirt.gemspec
CHANGED
@@ -26,20 +26,26 @@ Gem::Specification.new do |s|
|
|
26
26
|
s.add_dependency("fog-core", "~> 1.27", ">= 1.27.4")
|
27
27
|
s.add_dependency("fog-json")
|
28
28
|
s.add_dependency("fog-xml", "~> 0.1.1")
|
29
|
-
s.add_dependency('ruby-libvirt','>= 0.
|
29
|
+
s.add_dependency('ruby-libvirt','>= 0.7.0')
|
30
30
|
s.add_dependency('mime-types','< 2.0') if RUBY_VERSION < '1.9'
|
31
31
|
s.add_dependency('nokogiri', '< 1.6') if RUBY_VERSION < '1.9'
|
32
32
|
s.add_dependency('octokit', '< 3.0') if RUBY_VERSION < '1.9'
|
33
33
|
s.add_dependency('rest-client', '<= 1.7.0') if RUBY_VERSION < '1.9'
|
34
|
+
s.add_dependency("tins", "<= 1.6.0") if RUBY_VERSION < "1.9"
|
34
35
|
|
35
|
-
# Fedora and derivates need explicit require
|
36
|
-
|
36
|
+
# Fedora and derivates need explicit require.
|
37
|
+
# Also we cannot use newer JSON on Ruby 1.8 & 1.9.
|
38
|
+
if RUBY_VERSION < '2.0'
|
39
|
+
s.add_dependency("json", '< 2.0')
|
40
|
+
else
|
41
|
+
s.add_dependency("json")
|
42
|
+
end
|
37
43
|
|
38
44
|
s.add_development_dependency("minitest")
|
39
45
|
s.add_development_dependency("minitest-stub-const")
|
40
46
|
s.add_development_dependency("pry")
|
41
47
|
s.add_development_dependency("rake")
|
42
|
-
s.add_development_dependency("rubocop") if RUBY_VERSION > "
|
48
|
+
s.add_development_dependency("rubocop") if RUBY_VERSION > "2.0"
|
43
49
|
s.add_development_dependency("shindo", "~> 0.3.4")
|
44
50
|
s.add_development_dependency("simplecov")
|
45
51
|
s.add_development_dependency("yard")
|
@@ -346,19 +346,16 @@ module Fog
|
|
346
346
|
:network_interface_type => "network",
|
347
347
|
:network_nat_network => "default",
|
348
348
|
:network_bridge_name => "br0",
|
349
|
-
:boot_order =>
|
349
|
+
:boot_order => %w[hd cdrom network],
|
350
350
|
:display => default_display
|
351
351
|
}
|
352
352
|
end
|
353
353
|
|
354
|
-
def default_boot_order
|
355
|
-
%w[hd cdrom network]
|
356
|
-
end
|
357
|
-
|
358
354
|
def verify_boot_order order = []
|
355
|
+
valid_boot_media = %w[cdrom fd hd network]
|
359
356
|
if order
|
360
357
|
order.each do |b|
|
361
|
-
raise "invalid boot order, possible values are:
|
358
|
+
raise "invalid boot order, possible values are any combination of: #{valid_boot_media.join(', ')}" unless valid_boot_media.include?(b)
|
362
359
|
end
|
363
360
|
end
|
364
361
|
end
|
@@ -10,11 +10,21 @@ module Fog
|
|
10
10
|
elsif filter.key?(:name)
|
11
11
|
data << client.lookup_domain_by_name(filter[:name])
|
12
12
|
else
|
13
|
-
client.list_defined_domains.each { |name| data << client.lookup_domain_by_name(name) } unless filter[:defined] == false
|
14
|
-
client.list_domains.each { |id| data << client.lookup_domain_by_id(id) } unless filter[:active] == false
|
13
|
+
client.list_defined_domains.each { |name| data << catchLibvirtExceptions { client.lookup_domain_by_name(name) } } unless filter[:defined] == false
|
14
|
+
client.list_domains.each { |id| data << catchLibvirtExceptions { client.lookup_domain_by_id(id) } } unless filter[:active] == false
|
15
15
|
end
|
16
16
|
data.compact.map { |d| domain_to_attributes d }.compact
|
17
17
|
end
|
18
|
+
|
19
|
+
# Catch Libvirt exceptions to avoid race conditions involving
|
20
|
+
# concurrent libvirt operations from other processes. For example,
|
21
|
+
# domains being undefined while fog-libvirt is trying to work with
|
22
|
+
# domain lists.
|
23
|
+
def catchLibvirtExceptions
|
24
|
+
yield
|
25
|
+
rescue ::Libvirt::RetrieveError, ::Libvirt::Error
|
26
|
+
nil
|
27
|
+
end
|
18
28
|
end
|
19
29
|
|
20
30
|
module Shared
|
data/lib/fog/libvirt/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fog-libvirt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- geemus (Wesley Beary)
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-09-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fog-core
|
@@ -63,9 +63,6 @@ dependencies:
|
|
63
63
|
requirement: !ruby/object:Gem::Requirement
|
64
64
|
requirements:
|
65
65
|
- - ">="
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
version: 0.5.0
|
68
|
-
- - "<"
|
69
66
|
- !ruby/object:Gem::Version
|
70
67
|
version: 0.7.0
|
71
68
|
type: :runtime
|
@@ -73,9 +70,6 @@ dependencies:
|
|
73
70
|
version_requirements: !ruby/object:Gem::Requirement
|
74
71
|
requirements:
|
75
72
|
- - ">="
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: 0.5.0
|
78
|
-
- - "<"
|
79
73
|
- !ruby/object:Gem::Version
|
80
74
|
version: 0.7.0
|
81
75
|
- !ruby/object:Gem::Dependency
|
@@ -323,7 +317,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
323
317
|
version: '0'
|
324
318
|
requirements: []
|
325
319
|
rubyforge_project:
|
326
|
-
rubygems_version: 2.
|
320
|
+
rubygems_version: 2.4.8
|
327
321
|
signing_key:
|
328
322
|
specification_version: 2
|
329
323
|
summary: Module for the 'fog' gem to support libvirt
|