omf_ec 6.2.0.pre.2 → 6.2.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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- OTFlZTI4NTVlY2RhNzFiZTI0YTZhY2IyZDNmNmViNmFmYTk2NjNhMQ==
4
+ ZjBjOWUzNmRlNTlhOWQ4MDkyODIxNjY4MjU2M2Y2MTQ3MWVhOTY1OQ==
5
5
  data.tar.gz: !binary |-
6
- OTJjYWQyMWM5YTQ3NWZjNDUyOWM3OWM1MDExNjRlMmZkYmY0NjU2ZA==
6
+ NDgyZmY5ZTg1NTdlOGM1MWJmYjFmNjA4ZWYzYmQ1YWFmNWUyNTBjNA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MmNlNjM1MDY2ZDEyYjRiNzAzZWUyYTQ2NjRkYWRiZWVjZmMyM2E5MTIwMzJl
10
- ZGQyYWZlN2M4MGI2NzlhZDllOWI1YWZmYTEyYzY0NzQ2MmUxMDljYWU2YjE0
11
- OWVlOGUxZmUzNGE1ZWM5ZjQ2ZDM0ZjAxY2RkMzFmMjdlMGUxZGI=
9
+ NzkwODVmYjllNmM3MDZkMzEyMGMwMGRkNTA1YmUwMTYyYjAwNjFmYzQxYzE4
10
+ M2MxYmVlYjg3NTRiNTExY2ZhNTIyMWY0ZDM3M2U3MDUzNzQyZmU4ZmYyNzI5
11
+ YjZkZmNhMWMzNDRlY2ZjYWZiMTNkOWYyZjYzYmY5NjIzMjM1MTg=
12
12
  data.tar.gz: !binary |-
13
- OGRkYTIxYTZmNjJmNWY2N2FlZGQzYzlmNDJkMmRkMmY0YjI1OTQ2NjY5YWUy
14
- NTAwMDY2ZTFmMWFiZTg2N2I3ZGZiMzVmNTRmMGE0OGM2YzU4YzQ4ZWIzMzE5
15
- OGNjZGRmNTdlM2JjNDMzM2YyOTVkODZhNWQ1YzRjMDFiNmU2NjE=
13
+ ZmFlNTNkNzk1ZjlhNDJlZjI2NGUxYmM2NjZhMTk3MDYwZDc0NWM0YWQ3MGFj
14
+ YWZlMTg3ZjJlYzA2MjI0YjE3ODVjN2YxY2FjOGRkN2YzYjE0NjYyOTA1MTky
15
+ NzRjNGQwMGYyOGM1MGJiMDA1ZDY1YzY5ZTk0MmFlYTI3YjE5ODU=
@@ -59,11 +59,11 @@ module OmfEc
59
59
  warn "RC reports warning: '#{msg[:reason]}'", msg.src
60
60
  debug msg, msg.src
61
61
  when 'CREATION.OK'
62
- debug "Resource #{msg[:res_id]} #{msg.resource.address} created"
62
+ debug "Resource #{msg[:res_id]} created"
63
63
  debug "Received CREATION.OK via #{topic.id}"
64
64
  debug msg, msg.src
65
65
 
66
- OmfEc.experiment.add_or_update_resource_state(msg.resource.address, msg.properties)
66
+ OmfEc.experiment.add_or_update_resource_state(msg.resource_address, msg.properties)
67
67
  OmfEc.experiment.process_events
68
68
  when 'STATUS'
69
69
  props = []
@@ -91,7 +91,7 @@ module OmfEc
91
91
  end
92
92
  end
93
93
  else
94
- info "Newly discovered resource >> #{name}"
94
+ debug "Newly discovered resource >> #{name}"
95
95
  #res = Hashie::Mash.new({ address: name }).merge(opts)
96
96
  opts[:address] = name
97
97
  @state[name] = opts
@@ -271,7 +271,6 @@ module OmfEc
271
271
  # Disconnect communicator, try to delete any XMPP affiliations
272
272
  def done
273
273
  info "Experiment: #{OmfEc.experiment.id} finished"
274
- info "Release applications and network interfaces"
275
274
  info "Exit in 15 seconds..."
276
275
 
277
276
  # Make sure that all defined events are removed
@@ -279,10 +278,24 @@ module OmfEc
279
278
 
280
279
  OmfCommon.el.after(10) do
281
280
  allGroups do |g|
282
- g.resources[type: 'application'].release unless g.app_contexts.empty?
283
- g.resources[type: 'net'].release unless g.net_ifs.find_all { |v| v.conf[:type] == 'net' }.empty?
284
- g.resources[type: 'wlan'].release unless g.net_ifs.find_all { |v| v.conf[:type] == 'wlan' }.empty?
285
- g.resources.membership = { leave: g.address }
281
+ # Clean up
282
+ unless g.app_contexts.empty?
283
+ info "Release applications in #{g.name}"
284
+ g.resources[type: 'application'].release
285
+ end
286
+ unless g.net_ifs.find_all { |v| v.conf[:type] == 'net' }.empty?
287
+ info "Release wired network interfaces in #{g.name}"
288
+ g.resources[type: 'net'].release
289
+ end
290
+ unless g.net_ifs.find_all { |v| v.conf[:type] == 'wlan' }.empty?
291
+ info "Release wireless network interfaces in #{g.name}"
292
+ g.resources[type: 'wlan'].release
293
+ end
294
+ # Let release messages go through first
295
+ OmfCommon.el.after(1) do
296
+ info "Configure resources to leave #{g.name}"
297
+ g.resources.membership = { leave: g.address }
298
+ end
286
299
  end
287
300
 
288
301
  OmfCommon.el.after(4) do
@@ -311,9 +324,11 @@ module OmfEc
311
324
  OmfEc.experiment.log_metadata("state", "running")
312
325
 
313
326
  allGroups do |g|
327
+ info "CONFIGURE #{g.members.size} resources to join group #{g.name}"
328
+ debug "CONFIGURE #{g.members.keys} to join group #{g.name}"
314
329
  g.members.each do |key, value|
315
330
  OmfEc.subscribe_and_monitor(key) do |res|
316
- info "Configure '#{key}' to join '#{g.name}'"
331
+ #info "Configure '#{key}' to join '#{g.name}'"
317
332
  g.synchronize do
318
333
  g.members[key] = res.address
319
334
  end
@@ -321,6 +336,18 @@ module OmfEc
321
336
  end
322
337
  end
323
338
  end
339
+
340
+ # For every 100 nodes, increase check interval by 1 second
341
+ count = allGroups.inject(0) { |c, g| c += g.members.size }
342
+ interval = count / 100
343
+ interval = 1 if interval < 1
344
+ info "TOTAL resources: #{count}. Events check interval: #{interval}."
345
+
346
+ OmfCommon.el.every(interval) do
347
+ EM.next_tick do
348
+ OmfEc.experiment.process_events rescue nil
349
+ end
350
+ end
324
351
  end
325
352
 
326
353
  # Ask the resources which joined the groups I created to leave
@@ -301,12 +301,6 @@ module OmfEc
301
301
  OmfCommon.init(@config_opts.delete(:environment), @config_opts) do |el|
302
302
  setup_logging
303
303
  OmfCommon.comm.on_connected do |comm|
304
- el.every(5) do
305
- EM.next_tick do
306
- OmfEc.experiment.process_events rescue nil
307
- end
308
- end
309
-
310
304
  info "OMF Experiment Controller #{OmfEc::VERSION} - Start"
311
305
  info "Connected using #{comm.conn_info}"
312
306
  info "Execute: #{@oedl_path}"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omf_ec
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.2.0.pre.2
4
+ version: 6.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - NICTA
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-17 00:00:00.000000000 Z
11
+ date: 2015-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - '='
88
88
  - !ruby/object:Gem::Version
89
- version: 6.2.0.pre.2
89
+ version: 6.2.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - '='
95
95
  - !ruby/object:Gem::Version
96
- version: 6.2.0.pre.2
96
+ version: 6.2.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: sequel
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -183,9 +183,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
183
183
  version: 1.9.3
184
184
  required_rubygems_version: !ruby/object:Gem::Requirement
185
185
  requirements:
186
- - - ! '>'
186
+ - - ! '>='
187
187
  - !ruby/object:Gem::Version
188
- version: 1.3.1
188
+ version: '0'
189
189
  requirements: []
190
190
  rubyforge_project: omf_ec
191
191
  rubygems_version: 2.4.2