elastic_search_framework 0.2.4 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/elastic_search_framework/index.rb +4 -3
- data/lib/elastic_search_framework/repository.rb +1 -0
- data/lib/elastic_search_framework/version.rb +1 -1
- data/lib/elastic_search_framework.rb +3 -3
- data/spec/example_index.rb +3 -3
- data/spec/index_spec.rb +2 -2
- data/spec/spec_helper.rb +9 -8
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 0e38cb0d02951b7d4b3d76e1eefdd6f6f1aece78b8155d745c8faff954e0708f
|
4
|
+
data.tar.gz: ffb17d5fdd74a9cb9098ecebba7073b993b405573ae61ac661cbb2c2b2006075
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0f73d01a913e2e858466675bf774e36d41dc87c4060e2bc97f34b0efeadb0fe06d8f43ab0c87a20dccd48248f524d9dc5f6a4e693ed45af83e3f2882e50014e9
|
7
|
+
data.tar.gz: 12128e76fa8ffaac2177722fe95250e9a520334460da0a3643839b01908a535c238f1a503cb2ff3408760435bf392668bcb557a08bc2d54d23f5d4976e296a98
|
@@ -18,7 +18,7 @@ module ElasticSearchFramework
|
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
21
|
-
def mapping(name:, field:, type:,
|
21
|
+
def mapping(name:, field:, type:, index:)
|
22
22
|
|
23
23
|
unless instance_variable_defined?(:@elastic_search_index_mappings)
|
24
24
|
instance_variable_set(:@elastic_search_index_mappings, {})
|
@@ -30,7 +30,7 @@ module ElasticSearchFramework
|
|
30
30
|
mappings[name] = {}
|
31
31
|
end
|
32
32
|
|
33
|
-
mappings[name][field] = { type: type,
|
33
|
+
mappings[name][field] = { type: type, index: index}
|
34
34
|
|
35
35
|
instance_variable_set(:@elastic_search_index_mappings, mappings)
|
36
36
|
|
@@ -58,6 +58,7 @@ module ElasticSearchFramework
|
|
58
58
|
|
59
59
|
request = Net::HTTP::Put.new(uri.request_uri)
|
60
60
|
request.body = JSON.dump(payload)
|
61
|
+
request.content_type = 'application/json'
|
61
62
|
|
62
63
|
response = repository.with_client do |client|
|
63
64
|
client.request(request)
|
@@ -126,7 +127,7 @@ module ElasticSearchFramework
|
|
126
127
|
mappings[name].keys.each do |field|
|
127
128
|
payload[:mappings][name][:properties][field] = {
|
128
129
|
type: mappings[name][field][:type],
|
129
|
-
index: mappings[name][field][:
|
130
|
+
index: mappings[name][field][:index]
|
130
131
|
}
|
131
132
|
end
|
132
133
|
end
|
@@ -1,6 +1,8 @@
|
|
1
|
+
require 'connection_pool'
|
2
|
+
require 'date'
|
1
3
|
require 'hash_kit'
|
2
4
|
require 'json'
|
3
|
-
require '
|
5
|
+
require 'net/http'
|
4
6
|
require_relative 'elastic_search_framework/version'
|
5
7
|
require_relative 'elastic_search_framework/logger'
|
6
8
|
require_relative 'elastic_search_framework/exceptions'
|
@@ -8,8 +10,6 @@ require_relative 'elastic_search_framework/repository'
|
|
8
10
|
require_relative 'elastic_search_framework/index'
|
9
11
|
require_relative 'elastic_search_framework/query'
|
10
12
|
|
11
|
-
require 'date'
|
12
|
-
|
13
13
|
module ElasticSearchFramework
|
14
14
|
def self.namespace=(value)
|
15
15
|
@namespace = value
|
data/spec/example_index.rb
CHANGED
@@ -3,7 +3,7 @@ class ExampleIndex
|
|
3
3
|
|
4
4
|
index name: 'example_index'
|
5
5
|
|
6
|
-
mapping name: 'default', field: :name, type: :
|
6
|
+
mapping name: 'default', field: :name, type: :keyword, index: true
|
7
7
|
|
8
8
|
end
|
9
9
|
|
@@ -14,7 +14,7 @@ class ExampleIndexWithId
|
|
14
14
|
|
15
15
|
id :number
|
16
16
|
|
17
|
-
mapping name: 'default', field: :name, type: :
|
17
|
+
mapping name: 'default', field: :name, type: :keyword, index: true
|
18
18
|
|
19
19
|
end
|
20
20
|
|
@@ -23,7 +23,7 @@ class ExampleIndexWithShard
|
|
23
23
|
|
24
24
|
index name: 'example_index', shards: 1
|
25
25
|
|
26
|
-
mapping name: 'default', field: :name, type: :
|
26
|
+
mapping name: 'default', field: :name, type: :keyword, index: true
|
27
27
|
|
28
28
|
end
|
29
29
|
|
data/spec/index_spec.rb
CHANGED
@@ -27,8 +27,8 @@ RSpec.describe ElasticSearchFramework::Index do
|
|
27
27
|
mappings = ExampleIndex.mappings
|
28
28
|
expect(mappings).to be_a(Hash)
|
29
29
|
expect(mappings.length).to eq 1
|
30
|
-
expect(mappings['default'][:name][:type]).to eq :
|
31
|
-
expect(mappings['default'][:name][:
|
30
|
+
expect(mappings['default'][:name][:type]).to eq :keyword
|
31
|
+
expect(mappings['default'][:name][:index]).to eq true
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
data/spec/spec_helper.rb
CHANGED
@@ -1,15 +1,16 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require 'elastic_search_framework'
|
4
|
-
require_relative '../spec/test_item.rb'
|
5
|
-
require_relative '../spec/example_index'
|
6
|
-
require 'pry'
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler'
|
7
3
|
|
8
4
|
require 'simplecov'
|
9
5
|
SimpleCov.start do
|
10
6
|
add_filter '/spec/'
|
11
7
|
end
|
12
8
|
|
9
|
+
require 'elastic_search_framework'
|
10
|
+
require_relative '../spec/test_item.rb'
|
11
|
+
require_relative '../spec/example_index'
|
12
|
+
require 'pry'
|
13
|
+
|
13
14
|
RSpec.configure do |config|
|
14
15
|
config.expect_with :rspec do |expectations|
|
15
16
|
expectations.include_chain_clauses_in_custom_matcher_descriptions = true
|
@@ -23,5 +24,5 @@ RSpec.configure do |config|
|
|
23
24
|
end
|
24
25
|
|
25
26
|
ElasticSearchFramework.logger.level = Logger::ERROR
|
26
|
-
ElasticSearchFramework.host = 'http://elasticsearch'
|
27
|
-
ElasticSearchFramework.port = 9200
|
27
|
+
ElasticSearchFramework.host = ENV.fetch('ELASTIC_SEARCH_HOST', 'http://elasticsearch')
|
28
|
+
ElasticSearchFramework.port = ENV.fetch('ELASTIC_SEARCH_PORT', '9200')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elastic_search_framework
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- vaughanbrittonsage
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-04-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -110,7 +110,7 @@ dependencies:
|
|
110
110
|
version: '0'
|
111
111
|
description: A lightweight framework to for working with elastic search.
|
112
112
|
email:
|
113
|
-
-
|
113
|
+
- vaughan.britton@sage.com
|
114
114
|
executables: []
|
115
115
|
extensions: []
|
116
116
|
extra_rdoc_files: []
|
@@ -149,7 +149,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
149
149
|
version: '0'
|
150
150
|
requirements: []
|
151
151
|
rubyforge_project:
|
152
|
-
rubygems_version: 2.
|
152
|
+
rubygems_version: 2.7.6
|
153
153
|
signing_key:
|
154
154
|
specification_version: 4
|
155
155
|
summary: A lightweight framework to for working with elastic search.
|