Sha256: 8e4ddc475138c1c604f7efecbd827dac21b7fa885099a879d695dd26e87706bf

Contents?: true

Size: 1.54 KB

Versions: 1

Compression:

Stored size: 1.54 KB

Contents

#!/usr/bin/env ruby
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))

ARGV << '--help' if ARGV.empty?

require 'optparse'
require 'rapnd'
require 'daemons'

options = {}
OptionParser.new do |opts|
  opts.banner = "Usage: rapnd [options]"

  opts.on("--cert=MANDATORY", "Location of the cert pem file") do |cert|
    options[:cert] = cert
  end

  opts.on("--password=OPTIONAL", "Password for the cert pem file") do |password|
    options[:password] = password
  end

  opts.on("--redis_host=OPTIONAL", "Redis hostname") do |host|
    options[:redis_host] = host
  end
  
  opts.on("--redis_port=OPTIONAL", "Redis port") do |port|
    options[:redis_port] = port
  end
  
  opts.on("--environment=OPTIONAL", "Specify sandbox or production") do |env|
    if env == 'production'
      options[:host] = 'gateway.push.apple.com'
    else
      options[:host] = 'gateway.sandbox.push.apple.com'
    end
  end
  
  opts.on("--queue=OPTIONAL", "Name of the redis queue") do |queue|
    options[:queue] = queue
  end
  
  opts.on("--foreground", "Run in the foreground") do |fore|
    options[:foreground] = true
  end
  
  opts.on("--dir=OPTIONAL", "Directory to start in") do |dir|
    options[:dir] = dir
  end
  
  opts.on('--help', 'Show help') do |help|
    puts opts
  end
end.parse!

unless options[:foreground]
  Daemons.daemonize(
    :app_name => options[:queue],
    :dir_mode => :normal,
    :dir => "#{options[:dir]}/tmp",
    :log_dir => "#{options[:dir]}/log",
    :backtrace => true,
    :log_output => true
  )
end

Rapnd::Daemon.new(options).run!

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rapnd-0.1.5 bin/rapnd