Sha256: 2b26fb16ff810eeb8e10d5c0da02e2e1f9e9213aa25b6526fac01564e6083ee0

Contents?: true

Size: 1.53 KB

Versions: 3

Compression:

Stored size: 1.53 KB

Contents

#!/usr/bin/env ruby

# TODO cygwin check
cygwin = false

java_args = []
while i = ARGV.find_index {|arg| arg =~ /^\-D/ }
  if ARGV[i] == "-D"
    prop_path = ARGV[i + 1]
    unless prop_path
      STDERR.puts "-D option requires an option"
      exit 1
    end
    ARGV.slice!(i, 2)
  else
    java_args << ARGV[i]
    ARGV.slice!(i)
  end
end

if prop_path
  props = File.read(prop_path)
  java_props = props.split("\n").reject {|prop| prop.strip.empty? }
  java_args = java_props + java_args
end

java_cmd = ENV['JAVACMD']
unless java_cmd
  if java_home = ENV['JAVA_HOME']
    if cygwin
      java_cmd = "#{`cygpath -u "#{java_home}"`.strip}/bin/java"
    else
      java_cmd = "#{java_home}/bin/java"
    end
  else
    java_cmd = "java"
  end
end

embulk_home = File.dirname(File.dirname(__FILE__))
classpath_dir = File.join(embulk_home, 'classpath')
lib_dir = File.join(embulk_home, 'lib')

jruby_complete = Dir.entries(classpath_dir).find {|jar| jar =~ /jruby-complete-[\d\.]+\.jar/ } rescue nil
unless jruby_complete
  STDERR.puts "Could not find jruby-complete at #{embulk_home}/classpath directory."
  if embulk_home == '.'
    STDERR.puts "Did you run ./gradlew classpath? You need to build java code and create ./classpath directory first."
  end
  raise SystemExit.new(1)
end

# java ... -jar ruby-complete.jar $EMBULK_HOME/lib/embulk/command/embulk.rb "$@"
cmdline = [java_cmd]
cmdline.concat java_args
cmdline << '-jar' << File.join(classpath_dir, jruby_complete)
cmdline << File.join(lib_dir, 'embulk/command/embulk.rb')
cmdline.concat ARGV
exec *cmdline

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
embulk-0.4.2 bin/embulk
embulk-0.4.1 bin/embulk
embulk-0.4.0 bin/embulk