Sha256: 897abd020c2911dc59c89f94ebf6ab52d41a3c3623824f12ffa1defa204a0a6e

Contents?: true

Size: 1.2 KB

Versions: 12

Compression:

Stored size: 1.2 KB

Contents

#!/usr/bin/env ruby

require 'fileutils'
require 'optparse'
require File.join(File.dirname(__FILE__), '..', 'lib', 'sunspot', 'schema')

solr_directory = FileUtils.pwd

schema = Sunspot::Schema.new

OptionParser.new do |opts|
  opts.banner = 'Usage: sunspot-configure-solr [options]'

  opts.on '--tokenizer=TOKENIZER', 'Tokenizer class to use' do |tokenizer|
    schema.tokenizer = tokenizer
  end

  opts.on '--extra-filter=EXTRA_FILTER', 'Extra filters for tokenized text (you may specify this multiple times)' do |extra_filter|
    schema.add_filter(extra_filter)
  end

  opts.on '--dir=CONF_DIR', 'Directory containing Solr configuration and schema' do |dir|
    solr_directory = File.expand_path(dir)
  end
end.parse!

conf_directory = File.join(solr_directory, 'conf')
schema_file = File.join(conf_directory, 'schema.xml')

FileUtils.mkdir_p(conf_directory)

if File.exist?(schema_file)
  backup_file = File.join(conf_directory, "schema-#{File.mtime(schema_file).strftime('%Y%m%d%H%M%S')}.xml")
  STDERR.puts("Backing up current schema file to #{File.expand_path(backup_file)}")
  FileUtils.mv(schema_file, backup_file)
end

File.open(File.join(conf_directory, 'schema.xml'), 'w') do |file|
  file << schema.to_xml
end

Version data entries

12 entries across 12 versions & 3 rubygems

Version Path
sunspot-0.10.9 bin/sunspot-configure-solr
sunspot-0.10.8 bin/sunspot-configure-solr
nxa-sunspot-0.10.7 bin/sunspot-configure-solr
sunspot-0.10.7 bin/sunspot-configure-solr
sunspot-0.10.6 bin/sunspot-configure-solr
sunspot-0.10.5 bin/sunspot-configure-solr
sunspot-0.10.4 bin/sunspot-configure-solr
kuahyeow-sunspot-0.10.3 bin/sunspot-configure-solr
sunspot-0.10.3 bin/sunspot-configure-solr
sunspot-0.10.2 bin/sunspot-configure-solr
sunspot-0.10.1 bin/sunspot-configure-solr
sunspot-0.10.0 bin/sunspot-configure-solr