bin/launchagent in launch-agent-0.6.1 vs bin/launchagent in launch-agent-0.7.0

- old
+ new

@@ -5,26 +5,27 @@ require 'docopt' program_name = File.basename($0) doc =<<-EOS Usage: - #{program_name} [--env=<env>] (--daemon | --interval <sec>) [--wdir=<dir>] [--] (<argument>...) + #{program_name} [--env=<env>] (--daemon | --interval <sec>) [--wdir=<dir>] (<argument>...) #{program_name} -h | --help Options: -h --help Show this screen. + -v --version Show version information. -e --env=<env> Additional environmental variables to be set before running the job. Can specify multiple value with comma. e.g. FOO=bar,BAR=baz -w --wdir=<dir> Specify a directory to chdir(2) to before running the job -d --daemon Load as daemon. If it is set, --interval option is ignored. -i --interval=<sec> Causes the job to be started every N seconds EOS -options = Docopt(doc, LaunchAgent::VERSION) - begin - agent = LaunchAgent::CLI::OptionParser.new(options, ARGV).agent + options = Docopt::docopt(doc, :version => LaunchAgent::VERSION) + + agent = LaunchAgent::CLI::OptionParser.new(options, options['<argument>']).agent action = agent.loaded? ? :unload : :load agent.send(action) - puts '%s "%s"' % [action, ARGV.join(' ')] -rescue => e - abort e.message + puts '%s "%s"' % [action, agent.args.join(' ')] +rescue Docopt::Exit => e + puts e.message end