Skip to content

Commit

Permalink
Move configuration into its own file
Browse files Browse the repository at this point in the history
  • Loading branch information
robsears committed Apr 27, 2016
1 parent 485495c commit a008f11
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 34 deletions.
35 changes: 35 additions & 0 deletions lib/searchyou/configuration.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
module Searchyou
class Configuration
attr_accessor :site
def initialize(site)
self.site = site
end

# Determine a URL for the cluster, or fail with error
def elasticsearch_url
ENV['BONSAI_URL'] || ENV['ELASTICSEARCH_URL'] ||
((site.config||{})['elasticsearch']||{})['url'] ||
raise(ArgumentError, "No Elasticsearch URL present, skipping indexing")
end

# Getter for the number of primary shards
def elasticsearch_number_of_shards
site.config['elasticsearch']['number_of_shards'] || 1
end

# Getter for the number of replicas
def elasticsearch_number_of_replicas
site.config['elasticsearch']['number_of_replicas'] || 1
end

# Getter for the index name
def elasticsearch_index_base_name
site.config['elasticsearch']['index_name'] || "jekyll"
end

# Getter for the default type
def elasticsearch_default_type
site.config['elasticsearch']['default_type'] || 'post'
end
end
end
35 changes: 1 addition & 34 deletions lib/searchyou/generator.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
require 'searchyou/indexer'
require 'searchyou/configuration'

module Searchyou

Expand Down Expand Up @@ -38,38 +39,4 @@ def generate(site)

end

# Class containing configuration options
class Configuration
attr_accessor :site
def initialize(site)
self.site = site
end

# Determine a URL for the cluster, or fail with error
def elasticsearch_url
ENV['BONSAI_URL'] || ENV['ELASTICSEARCH_URL'] ||
((site.config||{})['elasticsearch']||{})['url'] ||
raise(ArgumentError, "No Elasticsearch URL present, skipping indexing")
end

# Getter for the number of primary shards
def elasticsearch_number_of_shards
site.config['elasticsearch']['number_of_shards'] || 1
end

# Getter for the number of replicas
def elasticsearch_number_of_replicas
site.config['elasticsearch']['number_of_replicas'] || 1
end

# Getter for the index name
def elasticsearch_index_base_name
site.config['elasticsearch']['index_name'] || "jekyll"
end

# Getter for the default type
def elasticsearch_default_type
site.config['elasticsearch']['default_type'] || 'post'
end
end
end

0 comments on commit a008f11

Please sign in to comment.