Sha256: d548f48b057693ca0c4ecb32e7013952792b9a1a9b815e20872ec74f567370ff
Contents?: true
Size: 1.3 KB
Versions: 3
Compression:
Stored size: 1.3 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.load_defaults 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
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
mirage-0.1.4 | bin/mirage |
mirage-0.1.3 | bin/mirage |
mirage-0.1.2 | bin/mirage |