Sha256: 8037bf7e78368d05c6127258c127aa8b840a0c5fdeeeff25a8df85911f8fb72f
Contents?: true
Size: 1.29 KB
Versions: 6
Compression:
Stored size: 1.29 KB
Contents
#!/usr/bin/env ruby require 'rubygems' $LOAD_PATH.unshift("#{File.dirname(__FILE__)}/../lib") require 'mirage' include Mirage::Util RUBY_CMD = RUBY_PLATFORM == 'JAVA' ? 'jruby' : 'ruby' def start_mirage(args, mirage) puts "Starting Mirage" system "(#{RUBY_CMD} #{File.dirname(__FILE__)}/../lib/start_mirage.rb #{args.join(' ')}) > /dev/null 2>&1 &" wait_until do mirage.running? end end def mirage_process_ids mirage_cmdline_files = Dir['/proc/*/cmdline'].find_all { |cmdline_file| File.read(cmdline_file) =~ /Mirage Server|start_mirage/ } mirage_cmdline_files.collect{|mirage_cmdline_file| File.read("#{File.dirname(mirage_cmdline_file)}/stat").split(' ').first.to_i } end if ARGV.include?('start') options = parse_options(ARGV) mirage_client = Mirage::Client.new "http://localhost:#{options[:port]}/mirage" if mirage_client.running? puts "Mirage already running" exit 1 end start_mirage(ARGV, mirage_client) begin mirage_client.prime rescue Mirage::InternalServerException => e puts "WARN: #{e.message}" end elsif ARGV.include?('stop') puts "Stoping Mirage" begin mirage_process_ids.each do |id| puts "killing #{id}" Process.kill(9, id) end rescue puts 'Mirage is not running' end else parse_options ['--help'] exit 1 end
Version data entries
6 entries across 6 versions & 1 rubygems
Version | Path |
---|---|
mirage-1.0.2 | bin/mirage |
mirage-1.0.1 | bin/mirage |
mirage-1.0.0 | bin/mirage |
mirage-0.1.7 | bin/mirage |
mirage-0.1.6 | bin/mirage |
mirage-0.1.5 | bin/mirage |