omf_rc 6.1.9.pre.3 → 6.1.9
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.
- data/lib/omf_rc/resource_proxy/node.rb +2 -1
- data/lib/omf_rc/runner.rb +3 -2
- data/lib/omf_rc/util/topology.rb +14 -9
- metadata +42 -52
- checksums.yaml +0 -7
@@ -85,6 +85,7 @@ module OmfRc::ResourceProxy::Node
|
|
85
85
|
# referenced in that file. The result is sent to an OML database.
|
86
86
|
hook :before_ready do |res|
|
87
87
|
next if res.defaults(:topo_file).nil? || res.defaults(:topo_file).empty?
|
88
|
-
|
88
|
+
timeout = res.defaults(:topo_check_timeout) || 600
|
89
|
+
check_topology(res.uid, res.defaults(:topo_file), timeout)
|
89
90
|
end
|
90
91
|
end
|
data/lib/omf_rc/runner.rb
CHANGED
@@ -142,8 +142,9 @@ module OmfRc
|
|
142
142
|
end
|
143
143
|
|
144
144
|
@opts.merge!(@gopts)
|
145
|
-
|
146
|
-
|
145
|
+
# Merge in place as OML may hold @omlopts
|
146
|
+
in_place_oml_opts = (@opts[:oml] || @opts[:instrumentation] || Mash.new).to_hash(symbolize_keys: true)
|
147
|
+
@omlopts.merge!(in_place_oml_opts)
|
147
148
|
end
|
148
149
|
end
|
149
150
|
|
data/lib/omf_rc/util/topology.rb
CHANGED
@@ -14,13 +14,13 @@ module OmfRc::Util::Topology
|
|
14
14
|
# This MP is reporting if a 'to' host is reachable from a 'from' host
|
15
15
|
class OmfRc::Util::Topology::MPEdges < OML4R::MPBase
|
16
16
|
name :edges
|
17
|
-
param :timestamp, :type => :double # Time (s)
|
17
|
+
param :timestamp, :type => :double # Time (s)
|
18
18
|
param :from, :type => :string # ID/Name for this Resource Proxy
|
19
19
|
param :to, :type => :string # Address/Name of remote host
|
20
20
|
param :reachable, :type => :string # Is the remote host reachable?
|
21
21
|
end
|
22
22
|
|
23
|
-
# Check if a list of hosts from a local file are reachable from the host
|
23
|
+
# Check if a list of hosts from a local file are reachable from the host
|
24
24
|
# running this Node Proxy. The input topology file must simply contain one
|
25
25
|
# line per host, i.e. its IP address of hostname.
|
26
26
|
# The results of this check are send to the OML server and database set
|
@@ -29,13 +29,18 @@ module OmfRc::Util::Topology
|
|
29
29
|
# @yieldparam [Object] from the id or name of this Node Proxy
|
30
30
|
# @yieldparam [Object] topo_path the file with the host addresses
|
31
31
|
#
|
32
|
-
work :check_topology do |res,from,topo_path|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
32
|
+
work :check_topology do |res, from, topo_path, timeout|
|
33
|
+
timeout ||= 600 # Stop checking after 10 minutes
|
34
|
+
t = OmfCommon.el.every(10) do
|
35
|
+
info "Checking topology from file: '#{topo_path}'"
|
36
|
+
File.foreach(topo_path) do |v|
|
37
|
+
target = v.chomp
|
38
|
+
reachable = `ping -c 1 #{target}`.include?('bytes from')
|
39
|
+
info "Checked link to #{target}: #{reachable}"
|
40
|
+
OmfRc::Util::Topology::MPEdges.inject(Time.now.to_i, from, target, reachable)
|
41
|
+
end
|
39
42
|
end
|
43
|
+
|
44
|
+
OmfCommon.el.after(timeout) { t.cancel }
|
40
45
|
end
|
41
46
|
end
|
metadata
CHANGED
@@ -1,111 +1,126 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omf_rc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.1.9
|
4
|
+
version: 6.1.9
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- NICTA
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
12
|
+
date: 2014-10-10 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: minitest
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
|
-
- - '>='
|
19
|
+
- - ! '>='
|
18
20
|
- !ruby/object:Gem::Version
|
19
21
|
version: '0'
|
20
22
|
type: :development
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
|
-
- - '>='
|
27
|
+
- - ! '>='
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: '0'
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: pry
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
|
-
- - '>='
|
35
|
+
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
33
37
|
version: '0'
|
34
38
|
type: :development
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
|
-
- - '>='
|
43
|
+
- - ! '>='
|
39
44
|
- !ruby/object:Gem::Version
|
40
45
|
version: '0'
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: simplecov
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
|
-
- - '>='
|
51
|
+
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
47
53
|
version: '0'
|
48
54
|
type: :development
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
|
-
- - '>='
|
59
|
+
- - ! '>='
|
53
60
|
- !ruby/object:Gem::Version
|
54
61
|
version: '0'
|
55
62
|
- !ruby/object:Gem::Dependency
|
56
63
|
name: mocha
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
58
66
|
requirements:
|
59
|
-
- - '>='
|
67
|
+
- - ! '>='
|
60
68
|
- !ruby/object:Gem::Version
|
61
69
|
version: '0'
|
62
70
|
type: :development
|
63
71
|
prerelease: false
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
65
74
|
requirements:
|
66
|
-
- - '>='
|
75
|
+
- - ! '>='
|
67
76
|
- !ruby/object:Gem::Version
|
68
77
|
version: '0'
|
69
78
|
- !ruby/object:Gem::Dependency
|
70
79
|
name: omf_common
|
71
80
|
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
72
82
|
requirements:
|
73
83
|
- - '='
|
74
84
|
- !ruby/object:Gem::Version
|
75
|
-
version: 6.1.9
|
85
|
+
version: 6.1.9
|
76
86
|
type: :runtime
|
77
87
|
prerelease: false
|
78
88
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
79
90
|
requirements:
|
80
91
|
- - '='
|
81
92
|
- !ruby/object:Gem::Version
|
82
|
-
version: 6.1.9
|
93
|
+
version: 6.1.9
|
83
94
|
- !ruby/object:Gem::Dependency
|
84
95
|
name: cocaine
|
85
96
|
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
86
98
|
requirements:
|
87
|
-
- - '>='
|
99
|
+
- - ! '>='
|
88
100
|
- !ruby/object:Gem::Version
|
89
101
|
version: '0'
|
90
102
|
type: :runtime
|
91
103
|
prerelease: false
|
92
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
93
106
|
requirements:
|
94
|
-
- - '>='
|
107
|
+
- - ! '>='
|
95
108
|
- !ruby/object:Gem::Version
|
96
109
|
version: '0'
|
97
110
|
- !ruby/object:Gem::Dependency
|
98
111
|
name: facter
|
99
112
|
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
100
114
|
requirements:
|
101
|
-
- - '>='
|
115
|
+
- - ! '>='
|
102
116
|
- !ruby/object:Gem::Version
|
103
117
|
version: '0'
|
104
118
|
type: :runtime
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
107
122
|
requirements:
|
108
|
-
- - '>='
|
123
|
+
- - ! '>='
|
109
124
|
- !ruby/object:Gem::Version
|
110
125
|
version: '0'
|
111
126
|
description: Resource controller of OMF, a generic framework for controlling and managing
|
@@ -197,54 +212,29 @@ files:
|
|
197
212
|
homepage: http://omf.mytestbed.net
|
198
213
|
licenses:
|
199
214
|
- MIT
|
200
|
-
metadata: {}
|
201
215
|
post_install_message:
|
202
216
|
rdoc_options: []
|
203
217
|
require_paths:
|
204
218
|
- lib
|
205
219
|
required_ruby_version: !ruby/object:Gem::Requirement
|
220
|
+
none: false
|
206
221
|
requirements:
|
207
|
-
- - '>='
|
222
|
+
- - ! '>='
|
208
223
|
- !ruby/object:Gem::Version
|
209
224
|
version: 1.9.3
|
210
225
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
226
|
+
none: false
|
211
227
|
requirements:
|
212
|
-
- - '
|
228
|
+
- - ! '>='
|
213
229
|
- !ruby/object:Gem::Version
|
214
|
-
version:
|
230
|
+
version: '0'
|
231
|
+
segments:
|
232
|
+
- 0
|
233
|
+
hash: -3715069632668391664
|
215
234
|
requirements: []
|
216
235
|
rubyforge_project: omf_rc
|
217
|
-
rubygems_version:
|
236
|
+
rubygems_version: 1.8.23
|
218
237
|
signing_key:
|
219
|
-
specification_version:
|
238
|
+
specification_version: 3
|
220
239
|
summary: OMF resource controller
|
221
|
-
test_files:
|
222
|
-
- test/fixture/ip/addr_show
|
223
|
-
- test/fixture/iw/help
|
224
|
-
- test/fixture/iw/info
|
225
|
-
- test/fixture/iw/link
|
226
|
-
- test/fixture/lsmod
|
227
|
-
- test/fixture/omf_rc.simple.yml
|
228
|
-
- test/fixture/omf_rc.yml
|
229
|
-
- test/fixture/oml.hash
|
230
|
-
- test/fixture/oml.spec
|
231
|
-
- test/fixture/oml.xml
|
232
|
-
- test/fixture/sys/class/ieee80211/phy0/device/uevent
|
233
|
-
- test/fixture/sys/class/ieee80211/phy0/uevent
|
234
|
-
- test/fixture/sys/class/net/eth0/device/uevent
|
235
|
-
- test/fixture/sys/class/net/eth0/uevent
|
236
|
-
- test/fixture/sys/class/net/wlan0/device/uevent
|
237
|
-
- test/fixture/sys/class/net/wlan0/uevent
|
238
|
-
- test/omf_rc/message_process_error_spec.rb
|
239
|
-
- test/omf_rc/resource_factory_spec.rb
|
240
|
-
- test/omf_rc/resource_proxy/abstract_resource_spec.rb
|
241
|
-
- test/omf_rc/resource_proxy/application_spec.rb
|
242
|
-
- test/omf_rc/resource_proxy/node_spec.rb
|
243
|
-
- test/omf_rc/resource_proxy_dsl_spec.rb
|
244
|
-
- test/omf_rc/runner_spec.rb
|
245
|
-
- test/omf_rc/util/common_tools_spec.rb
|
246
|
-
- test/omf_rc/util/fact_spec.rb
|
247
|
-
- test/omf_rc/util/ip_spec.rb
|
248
|
-
- test/omf_rc/util/iw_spec.rb
|
249
|
-
- test/omf_rc/util/mod_spec.rb
|
250
|
-
- test/test_helper.rb
|
240
|
+
test_files: []
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: 40a379ccf3e96a718c8ed4ea8a8b65e14edc2d82
|
4
|
-
data.tar.gz: 3bd5b1e9b8f98b6bf53980b71dcc9a41e3fcdeac
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 95d40bf71325da5f8c74a0ebcb2fe3c99022ee5b37533cef23713db32ed15b06a0e64fcff6e40f2e22b03cca299c6e44716f8a7c6b5235b5ee4313f258b2c626
|
7
|
-
data.tar.gz: 05ac257e1e5b88172d13fa7fe3244bd590f8b5e58a6f2fa92cd44882524d4bd1a0642c34c3835c56a5c1ba2180183ace15988159616c9cb882a8cf2effb19bc5
|