rbbt-util 5.24.3 → 5.24.4

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: dc724315cf570c49c12aed817fc7996bb01c2c14
4
- data.tar.gz: 9ed853ef0afa511e95ccf195e3b4407274fda1cd
3
+ metadata.gz: dee6dfbe9d1a772c397240379672725fa87d00e6
4
+ data.tar.gz: 3dc029798e1c7c5bca86efff35790fc5466205b0
5
5
  SHA512:
6
- metadata.gz: 36ac51895692f1d69f5d402e6bef9ff57e52118793f9f3b43115c58a28755d073a4f84b0910600b59504acdce29becc6fbccfbed8f19dfabaf4e6f04da44f102
7
- data.tar.gz: daa26aa5e764a10dc3a6b770e7f9d61143173fbf4c65d946dc129a3e040d1b038a8e555902edd61560b6b0bee2a5544a141fbb5c3a80e47b7a0ecd91ab44d94e
6
+ metadata.gz: 8f245d1e98280306381c5b9aa4e0f7d17641051bb70efe3ce1e49305fe23bdfe60ca33a359aff2952e6eff0d8c69dcb8b8d70ef5d72f845c69dc7980136b97d8
7
+ data.tar.gz: 929cfce01b2fa8b16df94b8ee963f6d16bf008fa5405a7d83c19ec3b4d14193984e4db4611ffc755b211ff7368cf410526b83ac78d0d143c7f71d8c2818bc569
@@ -0,0 +1,8 @@
1
+ $rest_cache_semaphore = "/REST_SEMAPHORE"
2
+ parallel_rest_jobs = Rbbt::Config.get('parallel_rest_jobs', :parallel_rest_jobs, :rest_jobs, :default => 2)
3
+ begin
4
+ RbbtSemaphore.delete_semaphore($rest_cache_semaphore)
5
+ ensure
6
+ RbbtSemaphore.create_semaphore($rest_cache_semaphore, parallel_rest_jobs)
7
+ end
8
+ Log.debug("Created semaphore: #{$rest_cache_semaphore} with #{parallel_rest_jobs} size")
@@ -79,6 +79,9 @@ module Rbbt::Config
79
79
  end
80
80
 
81
81
  def self.get(key, *tokens)
82
+ options = tokens.pop if Hash === tokens.last
83
+ default = options.nil? ? nil : options[:default]
84
+
82
85
  tokens = tokens.flatten
83
86
  file, _sep, line = caller.reject{|l|
84
87
  l =~ /rbbt\/(?:resource\.rb|workflow\.rb)/ or
@@ -104,7 +107,7 @@ module Rbbt::Config
104
107
  end
105
108
  end
106
109
 
107
- value = priorities.empty? ? nil : priorities.sort_by{|p,v| p}.first.last.first
110
+ value = priorities.empty? ? default : priorities.sort_by{|p,v| p}.first.last.first
108
111
  value = false if value == 'false'
109
112
  Log.debug "Value #{value.inspect} for config key '#{ key }': #{tokens * ", "}"
110
113
  value
@@ -564,7 +564,7 @@ class Step
564
564
 
565
565
  def config(key, *tokens)
566
566
  options = tokens.pop if Hash === tokens.last
567
- default = options[:default] if options
567
+ options ||= {}
568
568
 
569
569
  new_tokens = []
570
570
  if workflow
@@ -574,9 +574,7 @@ class Step
574
574
  end
575
575
  new_tokens << ("task:" << task_name.to_s)
576
576
 
577
- value = Rbbt::Config.get(key, tokens + new_tokens)
578
-
579
- value || default
577
+ Rbbt::Config.get(key, tokens + new_tokens, options)
580
578
  end
581
579
 
582
580
  def access
@@ -479,8 +479,13 @@ class Step
479
479
  sout.close if sout
480
480
  Misc.pre_fork
481
481
  begin
482
- RbbtSemaphore.wait_semaphore(semaphore) if semaphore
483
482
  Open.mkdir File.dirname(path) unless Open.exist?(File.dirname(path))
483
+ Open.write(pid_file, Process.pid.to_s) unless Open.exists?(path) or Open.exists?(pid_file)
484
+ if semaphore
485
+ init_info
486
+ log :queue, "Queued over semaphore: #{semaphore}"
487
+ RbbtSemaphore.wait_semaphore(semaphore)
488
+ end
484
489
  begin
485
490
  @forked = true
486
491
  res = run no_load
@@ -261,7 +261,6 @@ class Step
261
261
  else
262
262
  children_pids << child_pid
263
263
  end
264
- #Process.detach(child_pid)
265
264
  set_info :children_pids, children_pids
266
265
  child_pid
267
266
  end
data/share/config.ru CHANGED
@@ -67,6 +67,9 @@ load_file Rbbt.etc['app.d/post.rb'].find_all
67
67
  #{{{ PRELOAD
68
68
  load_file Rbbt.etc['app.d/preload.rb'].find_all
69
69
 
70
+ #{{{ PRELOAD
71
+ load_file Rbbt.etc['app.d/semaphores.rb'].find_all
72
+
70
73
  #{{{ SINATRA
71
74
  load_file Rbbt.lib['sinatra.rb'].find_all
72
75
 
@@ -82,4 +85,3 @@ $title = app_name
82
85
  require 'rack'
83
86
  use Rack::Deflater
84
87
  run app
85
-
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.24.3
4
+ version: 5.24.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
@@ -194,6 +194,7 @@ files:
194
194
  - etc/app.d/remote_workflow_tasks.rb
195
195
  - etc/app.d/requires.rb
196
196
  - etc/app.d/resources.rb
197
+ - etc/app.d/semaphores.rb
197
198
  - etc/app.d/workflows.rb
198
199
  - lib/rbbt-util.rb
199
200
  - lib/rbbt.rb