Sha256: 5cbf4f7714dee8a640b3ba43fd1a84d835afb756e0b82cd64299ff87bf43d168

Contents?: true

Size: 1.11 KB

Versions: 5

Compression:

Stored size: 1.11 KB

Contents

#!/usr/bin/env ruby
require 'rubygems'
gem 'daemons', '~> 1.0'
gem 'optiflag', '~> 0.6.5'
require 'fileutils'
require 'tmpdir'
require 'daemons'
require 'optiflag'

working_directory = FileUtils.pwd
solr_home = File.join(File.dirname(__FILE__), '..', 'solr')

module SolrFlags extend OptiFlagSet
  optional_flag 'p' do
    description 'Port on which to run Solr (default 8983)'
    long_form 'port'
  end

  optional_flag 'd' do
    description 'Solr data directory'
  end

  optional_flag 's' do
    description 'Solr home (should contain conf/ directory)'
  end

  and_process!
end

port = ARGV.flags.p || '8983'
data_dir = File.expand_path(ARGV.flags.d || File.join(Dir.tmpdir, 'solr_data'))
home = File.expand_path(ARGV.flags.s) if ARGV.flags.s

Daemons.run_proc('sunspot-solr') do
  FileUtils.cd(working_directory) do
    FileUtils.cd(solr_home) do
      args = ['java']
      args << "-Djetty.port=#{port}" if port
      args << "-Dsolr.data.dir=#{data_dir}" if data_dir
      args << "-Dsolr.solr.home=#{home}" if home
      args << '-jar' << 'start.jar'
      STDERR.puts(args * ' ')
      Kernel.exec(*args)
    end
  end
end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
outoftime-sunspot-0.8.2 bin/sunspot-solr
outoftime-sunspot-0.8.3 bin/sunspot-solr
outoftime-sunspot-0.8.4 bin/sunspot-solr
outoftime-sunspot-0.8.5 bin/sunspot-solr
pallan-sunspot-0.8.3 bin/sunspot-solr