Guest User

Untitled

a guest
Feb 21st, 2018
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. # the first letter of the setting is used for parameters
  2. settings = {
  3. :port => 8000,
  4. :number => 3,
  5. :app_path => File.join(%w{/ home manveru darcs nitroproject examples hello}),
  6. :mode => 'live', # live|stage|debug
  7. :server => 'mongrel' # mongrel|webrick
  8. }
  9.  
  10. settings.each do |setting, default|
  11. arg = ARGV.join(' ').scan(/-#{setting.to_s[0,1]} (.*?) /).to_s
  12. settings[setting] = arg.empty? ? default : arg
  13. end
  14.  
  15. cmd = "ruby %{app_path}/run.rb --%{server} --%{mode} --port %{port} 1>>log/access.log 2>>log/error.log 0>&- &"
  16. #cmd = "ruby %{app_path}/run.rb --%{server} --%{mode} --port %{port} &"
  17.  
  18. 1.upto(settings[:number]) do |i|
  19. hash = settings.dup
  20. hash[:port] += (i - 1)
  21. this = cmd.gsub(/%\{(.*?)\}/){|e| hash[$1.to_sym]}
  22. puts this
  23. system(this)
  24. end
Add Comment
Please, Sign In to add comment