#!/usr/bin/env ruby $:.unshift(File.dirname(__FILE__) + '/../lib') unless $:.include?(File.dirname(__FILE__) + '/../lib') require 'evergreen' begin # The dup is to keep ARGV intact, so that tools like ruby-debug can respawn. success = Evergreen::Cli.execute(ARGV.dup) Kernel.exit(success ? 0 : 1) rescue SystemExit => e Kernel.exit(e.status) rescue Exception => e STDERR.puts("#{e.message} (#{e.class})") STDERR.puts(e.backtrace.join("\n")) Kernel.exit(1) end