elastic-transport 8.5.1 → 8.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/elastic/transport/transport/base.rb +1 -1
- data/lib/elastic/transport/transport/http/manticore.rb +7 -5
- data/lib/elastic/transport/transport/serializer/multi_json.rb +16 -2
- data/lib/elastic/transport/version.rb +1 -1
- metadata +7 -77
- data/.github/check_license_headers.rb +0 -33
- data/.github/license-header.txt +0 -16
- data/.github/workflows/license.yml +0 -13
- data/.github/workflows/otel.yml +0 -48
- data/.github/workflows/tests.yml +0 -86
- data/.gitignore +0 -19
- data/Gemfile +0 -39
- data/Gemfile-faraday1.gemfile +0 -40
- data/Rakefile +0 -133
- data/elastic-transport.gemspec +0 -74
- data/spec/elastic/connections/collection_spec.rb +0 -266
- data/spec/elastic/connections/selector_spec.rb +0 -166
- data/spec/elastic/transport/base_spec.rb +0 -265
- data/spec/elastic/transport/client_spec.rb +0 -1804
- data/spec/elastic/transport/http/curb_spec.rb +0 -126
- data/spec/elastic/transport/http/faraday_spec.rb +0 -141
- data/spec/elastic/transport/http/manticore_spec.rb +0 -164
- data/spec/elastic/transport/meta_header_spec.rb +0 -289
- data/spec/elastic/transport/opentelemetry_spec.rb +0 -356
- data/spec/elastic/transport/sniffer_spec.rb +0 -293
- data/spec/spec_helper.rb +0 -104
- data/test/integration/jruby_test.rb +0 -46
- data/test/integration/transport_test.rb +0 -144
- data/test/profile/client_benchmark_test.rb +0 -132
- data/test/test_helper.rb +0 -86
- data/test/unit/adapters_test.rb +0 -114
- data/test/unit/connection_test.rb +0 -133
- data/test/unit/response_test.rb +0 -30
- data/test/unit/serializer_test.rb +0 -33
- data/test/unit/transport_base_test.rb +0 -663
- data/test/unit/transport_curb_test.rb +0 -148
- data/test/unit/transport_faraday_test.rb +0 -251
- data/test/unit/transport_manticore_test.rb +0 -279
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ec964e43347f5b7ae8ab38e9f2403aa0f6bcd352c9169a2bcd4d54a1fa995957
|
|
4
|
+
data.tar.gz: cdbd0d5ce004ec76ba29af96ae02a0e084a926dd6bf3808d507b8a7f80764b5e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2809af5a1b46710a9b812aa11496266a83920e6efac87f1a30ed3e621963107b6bcc5d8362b297a07c9de4f3b030ecb0da34771ea27939513a5dc00b038503bd
|
|
7
|
+
data.tar.gz: 8b43dc2f6a63901eb5566b1eeb8a0a9a8ac4e189981cdab1afc9a24e4e6a3e8f7a7a325d137d6e218390c79c8532d0092a803e751fa078f170fe6506c5f31c77
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
## 8.5.2
|
|
2
|
+
|
|
3
|
+
- Minor refactor to `curb` implementation.
|
|
4
|
+
- Updated `yard` development dependency to `> 0.9.42`.
|
|
5
|
+
- Fix `multi_json` deprecation warnings. Some deprecations [were introduced in `multi_json` 1.21.0](https://github.com/sferik/multi_json/blob/main/CHANGELOG.md#1210). Pull Request: [#112](https://github.com/elastic/elastic-transport-ruby/pull/112).
|
|
6
|
+
- Reduced gem size. Pull Request: [#114](https://github.com/elastic/elastic-transport-ruby/pull/114).
|
|
7
|
+
- Addresses duplicate `content-type` header in Manticore. Pull Request: [#115](https://github.com/elastic/elastic-transport-ruby/pull/115).
|
|
8
|
+
|
|
1
9
|
## 8.5.1
|
|
2
10
|
|
|
3
11
|
- Fixes setting OpenTelemetry response status code only if available.
|
|
@@ -396,7 +396,7 @@ module Elastic
|
|
|
396
396
|
ACCEPT_ENCODING = 'Accept-Encoding'.freeze
|
|
397
397
|
CONTENT_ENCODING = 'Content-Encoding'.freeze
|
|
398
398
|
CONTENT_TYPE_STR = 'Content-Type'.freeze
|
|
399
|
-
CONTENT_TYPE_REGEX = /content-?_?type
|
|
399
|
+
CONTENT_TYPE_REGEX = /content-?_?type/i.freeze
|
|
400
400
|
DEFAULT_CONTENT_TYPE = 'application/json'.freeze
|
|
401
401
|
GZIP = 'gzip'.freeze
|
|
402
402
|
GZIP_FIRST_TWO_BYTES = '1f8b'.freeze
|
|
@@ -64,11 +64,10 @@ module Elastic
|
|
|
64
64
|
|
|
65
65
|
def initialize(arguments = {}, &block)
|
|
66
66
|
@request_options = {
|
|
67
|
-
headers:
|
|
67
|
+
headers:
|
|
68
68
|
arguments.dig(:transport_options, :headers) ||
|
|
69
69
|
arguments.dig(:options, :transport_options, :headers) ||
|
|
70
70
|
{}
|
|
71
|
-
)
|
|
72
71
|
}
|
|
73
72
|
@manticore = build_client(arguments[:options] || {})
|
|
74
73
|
super(arguments, &block)
|
|
@@ -78,7 +77,6 @@ module Elastic
|
|
|
78
77
|
def build_client(options = {})
|
|
79
78
|
client_options = options[:transport_options] || {}
|
|
80
79
|
client_options[:ssl] = options[:ssl] || {}
|
|
81
|
-
|
|
82
80
|
@manticore = ::Manticore::Client.new(client_options)
|
|
83
81
|
end
|
|
84
82
|
|
|
@@ -120,7 +118,6 @@ module Elastic
|
|
|
120
118
|
#
|
|
121
119
|
def __build_connections
|
|
122
120
|
apply_headers(options)
|
|
123
|
-
|
|
124
121
|
Connections::Collection.new(
|
|
125
122
|
connections: hosts.map do |host|
|
|
126
123
|
host[:protocol] = host[:scheme] || DEFAULT_PROTOCOL
|
|
@@ -169,7 +166,12 @@ module Elastic
|
|
|
169
166
|
|
|
170
167
|
def apply_headers(options)
|
|
171
168
|
headers = options[:headers].clone || options.dig(:transport_options, :headers).clone || {}
|
|
172
|
-
|
|
169
|
+
if (value = find_value(headers, CONTENT_TYPE_REGEX))
|
|
170
|
+
@request_options[:headers].reject! { |k, _| k.match? CONTENT_TYPE_REGEX }
|
|
171
|
+
headers[CONTENT_TYPE_STR] = value
|
|
172
|
+
else
|
|
173
|
+
headers[CONTENT_TYPE_STR] = DEFAULT_CONTENT_TYPE
|
|
174
|
+
end
|
|
173
175
|
headers[USER_AGENT_STR] = find_value(headers, USER_AGENT_REGEX) || find_value(@request_options[:headers], USER_AGENT_REGEX) || user_agent_header
|
|
174
176
|
headers[ACCEPT_ENCODING] = GZIP if use_compression?
|
|
175
177
|
@request_options[:headers].merge!(headers)
|
|
@@ -37,13 +37,27 @@ module Elastic
|
|
|
37
37
|
# De-serialize a Hash from JSON string
|
|
38
38
|
#
|
|
39
39
|
def load(string, options = {})
|
|
40
|
-
|
|
40
|
+
if deprecated_gem_version_loaded?
|
|
41
|
+
::MultiJson.load(string, options)
|
|
42
|
+
else
|
|
43
|
+
::MultiJSON.parse(string, options)
|
|
44
|
+
end
|
|
41
45
|
end
|
|
42
46
|
|
|
43
47
|
# Serialize a Hash to JSON string
|
|
44
48
|
#
|
|
45
49
|
def dump(object, options = {})
|
|
46
|
-
|
|
50
|
+
if deprecated_gem_version_loaded?
|
|
51
|
+
::MultiJson.dump(object, options)
|
|
52
|
+
else
|
|
53
|
+
::MultiJSON.generate(object, options)
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
private
|
|
58
|
+
|
|
59
|
+
def deprecated_gem_version_loaded?
|
|
60
|
+
Gem.loaded_specs['multi_json'].version < Gem::Version.create('1.21.0')
|
|
47
61
|
end
|
|
48
62
|
end
|
|
49
63
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: elastic-transport
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 8.5.
|
|
4
|
+
version: 8.5.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Elastic Client Library Maintainers
|
|
@@ -37,20 +37,6 @@ dependencies:
|
|
|
37
37
|
- - ">="
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
39
|
version: '0'
|
|
40
|
-
- !ruby/object:Gem::Dependency
|
|
41
|
-
name: curb
|
|
42
|
-
requirement: !ruby/object:Gem::Requirement
|
|
43
|
-
requirements:
|
|
44
|
-
- - ">="
|
|
45
|
-
- !ruby/object:Gem::Version
|
|
46
|
-
version: '0'
|
|
47
|
-
type: :development
|
|
48
|
-
prerelease: false
|
|
49
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
50
|
-
requirements:
|
|
51
|
-
- - ">="
|
|
52
|
-
- !ruby/object:Gem::Version
|
|
53
|
-
version: '0'
|
|
54
40
|
- !ruby/object:Gem::Dependency
|
|
55
41
|
name: bundler
|
|
56
42
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -237,16 +223,16 @@ dependencies:
|
|
|
237
223
|
name: yard
|
|
238
224
|
requirement: !ruby/object:Gem::Requirement
|
|
239
225
|
requirements:
|
|
240
|
-
- - "
|
|
226
|
+
- - ">"
|
|
241
227
|
- !ruby/object:Gem::Version
|
|
242
|
-
version:
|
|
228
|
+
version: 0.9.42
|
|
243
229
|
type: :development
|
|
244
230
|
prerelease: false
|
|
245
231
|
version_requirements: !ruby/object:Gem::Requirement
|
|
246
232
|
requirements:
|
|
247
|
-
- - "
|
|
233
|
+
- - ">"
|
|
248
234
|
- !ruby/object:Gem::Version
|
|
249
|
-
version:
|
|
235
|
+
version: 0.9.42
|
|
250
236
|
description: 'Low level Ruby client for Elastic. See the `elasticsearch` or `elastic-enterprise-search`
|
|
251
237
|
gems for full integration.
|
|
252
238
|
|
|
@@ -259,20 +245,10 @@ extra_rdoc_files:
|
|
|
259
245
|
- LICENSE
|
|
260
246
|
- README.md
|
|
261
247
|
files:
|
|
262
|
-
- ".github/check_license_headers.rb"
|
|
263
|
-
- ".github/license-header.txt"
|
|
264
|
-
- ".github/workflows/license.yml"
|
|
265
|
-
- ".github/workflows/otel.yml"
|
|
266
|
-
- ".github/workflows/tests.yml"
|
|
267
|
-
- ".gitignore"
|
|
268
248
|
- CHANGELOG.md
|
|
269
249
|
- CONTRIBUTING.md
|
|
270
|
-
- Gemfile
|
|
271
|
-
- Gemfile-faraday1.gemfile
|
|
272
250
|
- LICENSE
|
|
273
251
|
- README.md
|
|
274
|
-
- Rakefile
|
|
275
|
-
- elastic-transport.gemspec
|
|
276
252
|
- lib/elastic-transport.rb
|
|
277
253
|
- lib/elastic/transport.rb
|
|
278
254
|
- lib/elastic/transport/client.rb
|
|
@@ -292,29 +268,6 @@ files:
|
|
|
292
268
|
- lib/elastic/transport/transport/serializer/multi_json.rb
|
|
293
269
|
- lib/elastic/transport/transport/sniffer.rb
|
|
294
270
|
- lib/elastic/transport/version.rb
|
|
295
|
-
- spec/elastic/connections/collection_spec.rb
|
|
296
|
-
- spec/elastic/connections/selector_spec.rb
|
|
297
|
-
- spec/elastic/transport/base_spec.rb
|
|
298
|
-
- spec/elastic/transport/client_spec.rb
|
|
299
|
-
- spec/elastic/transport/http/curb_spec.rb
|
|
300
|
-
- spec/elastic/transport/http/faraday_spec.rb
|
|
301
|
-
- spec/elastic/transport/http/manticore_spec.rb
|
|
302
|
-
- spec/elastic/transport/meta_header_spec.rb
|
|
303
|
-
- spec/elastic/transport/opentelemetry_spec.rb
|
|
304
|
-
- spec/elastic/transport/sniffer_spec.rb
|
|
305
|
-
- spec/spec_helper.rb
|
|
306
|
-
- test/integration/jruby_test.rb
|
|
307
|
-
- test/integration/transport_test.rb
|
|
308
|
-
- test/profile/client_benchmark_test.rb
|
|
309
|
-
- test/test_helper.rb
|
|
310
|
-
- test/unit/adapters_test.rb
|
|
311
|
-
- test/unit/connection_test.rb
|
|
312
|
-
- test/unit/response_test.rb
|
|
313
|
-
- test/unit/serializer_test.rb
|
|
314
|
-
- test/unit/transport_base_test.rb
|
|
315
|
-
- test/unit/transport_curb_test.rb
|
|
316
|
-
- test/unit/transport_faraday_test.rb
|
|
317
|
-
- test/unit/transport_manticore_test.rb
|
|
318
271
|
homepage: https://github.com/elastic/elastic-transport-ruby
|
|
319
272
|
licenses:
|
|
320
273
|
- Apache-2.0
|
|
@@ -338,30 +291,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
338
291
|
- !ruby/object:Gem::Version
|
|
339
292
|
version: '0'
|
|
340
293
|
requirements: []
|
|
341
|
-
rubygems_version: 4.0.
|
|
294
|
+
rubygems_version: 4.0.12
|
|
342
295
|
specification_version: 4
|
|
343
296
|
summary: Low level Ruby client for Elastic services.
|
|
344
|
-
test_files:
|
|
345
|
-
- spec/elastic/connections/collection_spec.rb
|
|
346
|
-
- spec/elastic/connections/selector_spec.rb
|
|
347
|
-
- spec/elastic/transport/base_spec.rb
|
|
348
|
-
- spec/elastic/transport/client_spec.rb
|
|
349
|
-
- spec/elastic/transport/http/curb_spec.rb
|
|
350
|
-
- spec/elastic/transport/http/faraday_spec.rb
|
|
351
|
-
- spec/elastic/transport/http/manticore_spec.rb
|
|
352
|
-
- spec/elastic/transport/meta_header_spec.rb
|
|
353
|
-
- spec/elastic/transport/opentelemetry_spec.rb
|
|
354
|
-
- spec/elastic/transport/sniffer_spec.rb
|
|
355
|
-
- spec/spec_helper.rb
|
|
356
|
-
- test/integration/jruby_test.rb
|
|
357
|
-
- test/integration/transport_test.rb
|
|
358
|
-
- test/profile/client_benchmark_test.rb
|
|
359
|
-
- test/test_helper.rb
|
|
360
|
-
- test/unit/adapters_test.rb
|
|
361
|
-
- test/unit/connection_test.rb
|
|
362
|
-
- test/unit/response_test.rb
|
|
363
|
-
- test/unit/serializer_test.rb
|
|
364
|
-
- test/unit/transport_base_test.rb
|
|
365
|
-
- test/unit/transport_curb_test.rb
|
|
366
|
-
- test/unit/transport_faraday_test.rb
|
|
367
|
-
- test/unit/transport_manticore_test.rb
|
|
297
|
+
test_files: []
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
2
|
-
# license agreements. See the NOTICE file distributed with
|
|
3
|
-
# this work for additional information regarding copyright
|
|
4
|
-
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
5
|
-
# the Apache License, Version 2.0 (the "License"); you may
|
|
6
|
-
# not use this file except in compliance with the License.
|
|
7
|
-
# You may obtain a copy of the License at
|
|
8
|
-
#
|
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
#
|
|
11
|
-
# Unless required by applicable law or agreed to in writing,
|
|
12
|
-
# software distributed under the License is distributed on an
|
|
13
|
-
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
# KIND, either express or implied. See the License for the
|
|
15
|
-
# specific language governing permissions and limitations
|
|
16
|
-
# under the License.
|
|
17
|
-
|
|
18
|
-
LICENSE = File.read('./.github/license-header.txt')
|
|
19
|
-
files = `git ls-files | grep -E '\.rb|Rakefile|\.rake|\.erb|Gemfile|gemspec'`.split("\n")
|
|
20
|
-
errors = []
|
|
21
|
-
|
|
22
|
-
files.each do |file|
|
|
23
|
-
unless File.read(file).include?(LICENSE)
|
|
24
|
-
errors << file
|
|
25
|
-
puts "#{file} doesn't contain the correct license header"
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
if errors.empty?
|
|
30
|
-
puts 'All checked files have the correct license header'
|
|
31
|
-
else
|
|
32
|
-
exit 1
|
|
33
|
-
end
|
data/.github/license-header.txt
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
2
|
-
# license agreements. See the NOTICE file distributed with
|
|
3
|
-
# this work for additional information regarding copyright
|
|
4
|
-
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
5
|
-
# the Apache License, Version 2.0 (the "License"); you may
|
|
6
|
-
# not use this file except in compliance with the License.
|
|
7
|
-
# You may obtain a copy of the License at
|
|
8
|
-
#
|
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
#
|
|
11
|
-
# Unless required by applicable law or agreed to in writing,
|
|
12
|
-
# software distributed under the License is distributed on an
|
|
13
|
-
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
# KIND, either express or implied. See the License for the
|
|
15
|
-
# specific language governing permissions and limitations
|
|
16
|
-
# under the License.
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: License headers
|
|
2
|
-
on: [pull_request]
|
|
3
|
-
jobs:
|
|
4
|
-
build:
|
|
5
|
-
runs-on: ubuntu-latest
|
|
6
|
-
steps:
|
|
7
|
-
- uses: actions/checkout@v4
|
|
8
|
-
- uses: ruby/setup-ruby@v1
|
|
9
|
-
with:
|
|
10
|
-
ruby-version: '4.0'
|
|
11
|
-
- name: Check license headers
|
|
12
|
-
run: |
|
|
13
|
-
ruby ./.github/check_license_headers.rb
|
data/.github/workflows/otel.yml
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
name: opentelemetry
|
|
2
|
-
on:
|
|
3
|
-
push:
|
|
4
|
-
branches:
|
|
5
|
-
- main
|
|
6
|
-
pull_request:
|
|
7
|
-
branches:
|
|
8
|
-
- main
|
|
9
|
-
jobs:
|
|
10
|
-
test-otel:
|
|
11
|
-
name: 'Test Open Telemetry'
|
|
12
|
-
env:
|
|
13
|
-
TEST_ES_SERVER: http://localhost:9250
|
|
14
|
-
PORT: 9250
|
|
15
|
-
TEST_WITH_OTEL: true
|
|
16
|
-
strategy:
|
|
17
|
-
fail-fast: false
|
|
18
|
-
matrix:
|
|
19
|
-
ruby: ['4.0', 'jruby-9.4']
|
|
20
|
-
es_version: ['9.4.0-SNAPSHOT']
|
|
21
|
-
runs-on: ubuntu-latest
|
|
22
|
-
steps:
|
|
23
|
-
- uses: actions/checkout@v4
|
|
24
|
-
- name: Increase system limits
|
|
25
|
-
run: |
|
|
26
|
-
sudo swapoff -a
|
|
27
|
-
sudo sysctl -w vm.swappiness=1
|
|
28
|
-
sudo sysctl -w fs.file-max=262144
|
|
29
|
-
sudo sysctl -w vm.max_map_count=262144
|
|
30
|
-
- uses: elastic/elastic-github-actions/elasticsearch@master
|
|
31
|
-
with:
|
|
32
|
-
stack-version: ${{ matrix.es_version }}
|
|
33
|
-
security-enabled: false
|
|
34
|
-
- uses: ruby/setup-ruby@v1
|
|
35
|
-
with:
|
|
36
|
-
ruby-version: ${{ matrix.ruby }}
|
|
37
|
-
- name: Build and test with Rake
|
|
38
|
-
run: |
|
|
39
|
-
sudo apt-get update
|
|
40
|
-
sudo apt-get install libcurl4-openssl-dev
|
|
41
|
-
ruby -v
|
|
42
|
-
bundle install
|
|
43
|
-
- name: unit tests
|
|
44
|
-
run: bundle exec rake test:unit
|
|
45
|
-
- name: specs
|
|
46
|
-
run: bundle exec rake test:spec
|
|
47
|
-
- name: integration tests
|
|
48
|
-
run: bundle exec rake test:integration
|
data/.github/workflows/tests.yml
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
name: 8.5 tests
|
|
2
|
-
on:
|
|
3
|
-
push:
|
|
4
|
-
branches:
|
|
5
|
-
- 8.5
|
|
6
|
-
pull_request:
|
|
7
|
-
branches:
|
|
8
|
-
- 8.5
|
|
9
|
-
workflow_dispatch:
|
|
10
|
-
jobs:
|
|
11
|
-
test:
|
|
12
|
-
name: 'Main tests'
|
|
13
|
-
env:
|
|
14
|
-
TEST_ES_SERVER: http://localhost:9250
|
|
15
|
-
PORT: 9250
|
|
16
|
-
strategy:
|
|
17
|
-
fail-fast: false
|
|
18
|
-
matrix:
|
|
19
|
-
ruby: ['3.2', '3.3', '3.4', '4.0', 'jruby-9.3', 'jruby-9.4', 'jruby-10.0']
|
|
20
|
-
es_version: ['8.19.14-SNAPSHOT', '9.2.8-SNAPSHOT', '9.3.3-SNAPSHOT', '9.4.0-SNAPSHOT']
|
|
21
|
-
runs-on: ubuntu-latest
|
|
22
|
-
steps:
|
|
23
|
-
- uses: actions/checkout@v4
|
|
24
|
-
- name: Increase system limits
|
|
25
|
-
run: |
|
|
26
|
-
sudo swapoff -a
|
|
27
|
-
sudo sysctl -w vm.swappiness=1
|
|
28
|
-
sudo sysctl -w fs.file-max=262144
|
|
29
|
-
sudo sysctl -w vm.max_map_count=262144
|
|
30
|
-
- uses: elastic/elastic-github-actions/elasticsearch@master
|
|
31
|
-
with:
|
|
32
|
-
stack-version: ${{ matrix.es_version }}
|
|
33
|
-
security-enabled: false
|
|
34
|
-
- uses: ruby/setup-ruby@v1
|
|
35
|
-
with:
|
|
36
|
-
ruby-version: ${{ matrix.ruby }}
|
|
37
|
-
- name: Build and test with Rake
|
|
38
|
-
run: |
|
|
39
|
-
sudo apt-get update
|
|
40
|
-
sudo apt-get install libcurl4-openssl-dev
|
|
41
|
-
ruby -v
|
|
42
|
-
bundle install
|
|
43
|
-
- name: unit tests
|
|
44
|
-
run: bundle exec rake test:unit
|
|
45
|
-
- name: specs
|
|
46
|
-
run: bundle exec rake test:spec
|
|
47
|
-
- name: integration tests
|
|
48
|
-
run: bundle exec rake test:integration
|
|
49
|
-
test-faraday1:
|
|
50
|
-
name: 'Test Faraday 1'
|
|
51
|
-
env:
|
|
52
|
-
TEST_ES_SERVER: http://localhost:9250
|
|
53
|
-
PORT: 9250
|
|
54
|
-
strategy:
|
|
55
|
-
fail-fast: false
|
|
56
|
-
matrix:
|
|
57
|
-
ruby: ['3.0', '3.1', '3.2', '3.3', 'jruby-9.3']
|
|
58
|
-
es_version: ['8.19.14-SNAPSHOT']
|
|
59
|
-
runs-on: ubuntu-latest
|
|
60
|
-
steps:
|
|
61
|
-
- uses: actions/checkout@v4
|
|
62
|
-
- name: Increase system limits
|
|
63
|
-
run: |
|
|
64
|
-
sudo swapoff -a
|
|
65
|
-
sudo sysctl -w vm.swappiness=1
|
|
66
|
-
sudo sysctl -w fs.file-max=262144
|
|
67
|
-
sudo sysctl -w vm.max_map_count=262144
|
|
68
|
-
- uses: elastic/elastic-github-actions/elasticsearch@master
|
|
69
|
-
with:
|
|
70
|
-
stack-version: ${{ matrix.es_version }}
|
|
71
|
-
security-enabled: false
|
|
72
|
-
- uses: ruby/setup-ruby@v1
|
|
73
|
-
with:
|
|
74
|
-
ruby-version: ${{ matrix.ruby }}
|
|
75
|
-
- name: Build and test with Rake
|
|
76
|
-
run: |
|
|
77
|
-
sudo apt-get update
|
|
78
|
-
sudo apt-get install libcurl4-openssl-dev
|
|
79
|
-
ruby -v
|
|
80
|
-
BUNDLE_GEMFILE=./Gemfile-faraday1.gemfile bundle install
|
|
81
|
-
- name: faraday1 unit tests
|
|
82
|
-
run: BUNDLE_GEMFILE=./Gemfile-faraday1.gemfile bundle exec rake test:faraday1:unit
|
|
83
|
-
- name: specs
|
|
84
|
-
run: BUNDLE_GEMFILE=./Gemfile-faraday1.gemfile bundle exec rake test:faraday1:spec
|
|
85
|
-
- name: integration tests
|
|
86
|
-
run: BUNDLE_GEMFILE=./Gemfile-faraday1.gemfile bundle exec rake test:faraday1:integration
|
data/.gitignore
DELETED
data/Gemfile
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
2
|
-
# license agreements. See the NOTICE file distributed with
|
|
3
|
-
# this work for additional information regarding copyright
|
|
4
|
-
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
5
|
-
# the Apache License, Version 2.0 (the "License"); you may
|
|
6
|
-
# not use this file except in compliance with the License.
|
|
7
|
-
# You may obtain a copy of the License at
|
|
8
|
-
#
|
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
#
|
|
11
|
-
# Unless required by applicable law or agreed to in writing,
|
|
12
|
-
# software distributed under the License is distributed on an
|
|
13
|
-
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
# KIND, either express or implied. See the License for the
|
|
15
|
-
# specific language governing permissions and limitations
|
|
16
|
-
# under the License.
|
|
17
|
-
|
|
18
|
-
source 'https://rubygems.org'
|
|
19
|
-
|
|
20
|
-
# Specify your gem's dependencies in elasticsearch-transport.gemspec
|
|
21
|
-
gemspec
|
|
22
|
-
|
|
23
|
-
group :development, :test do
|
|
24
|
-
gem 'faraday-excon'
|
|
25
|
-
gem 'faraday-httpclient'
|
|
26
|
-
gem 'faraday-net_http_persistent'
|
|
27
|
-
gem 'faraday-typhoeus'
|
|
28
|
-
gem 'mutex_m' if RUBY_VERSION >= '3.4'
|
|
29
|
-
gem 'opentelemetry-sdk', require: false if RUBY_VERSION >= '3.0'
|
|
30
|
-
if defined?(JRUBY_VERSION)
|
|
31
|
-
gem 'pry-nav'
|
|
32
|
-
else
|
|
33
|
-
gem 'async-http-faraday'
|
|
34
|
-
gem 'faraday-patron'
|
|
35
|
-
gem 'oj'
|
|
36
|
-
gem 'debug'
|
|
37
|
-
end
|
|
38
|
-
gem 'rspec'
|
|
39
|
-
end
|
data/Gemfile-faraday1.gemfile
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
# Licensed to Elasticsearch B.V. under one or more contributor
|
|
2
|
-
# license agreements. See the NOTICE file distributed with
|
|
3
|
-
# this work for additional information regarding copyright
|
|
4
|
-
# ownership. Elasticsearch B.V. licenses this file to you under
|
|
5
|
-
# the Apache License, Version 2.0 (the "License"); you may
|
|
6
|
-
# not use this file except in compliance with the License.
|
|
7
|
-
# You may obtain a copy of the License at
|
|
8
|
-
#
|
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
#
|
|
11
|
-
# Unless required by applicable law or agreed to in writing,
|
|
12
|
-
# software distributed under the License is distributed on an
|
|
13
|
-
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
# KIND, either express or implied. See the License for the
|
|
15
|
-
# specific language governing permissions and limitations
|
|
16
|
-
# under the License.
|
|
17
|
-
|
|
18
|
-
source 'https://rubygems.org'
|
|
19
|
-
|
|
20
|
-
# Usage:
|
|
21
|
-
#
|
|
22
|
-
# $ BUNDLE_GEMFILE=./Gemfile-faraday1.gemfile bundle install
|
|
23
|
-
# $ BUNDLE_GEMFILE=./Gemfile-faraday1.gemfile bundle exec rake test:faraday1:unit
|
|
24
|
-
|
|
25
|
-
gem 'faraday', '~> 1'
|
|
26
|
-
gemspec
|
|
27
|
-
|
|
28
|
-
group :development, :test do
|
|
29
|
-
gem 'httpclient'
|
|
30
|
-
gem 'net-http-persistent'
|
|
31
|
-
gem 'rspec'
|
|
32
|
-
gem 'typhoeus'
|
|
33
|
-
if defined?(JRUBY_VERSION)
|
|
34
|
-
gem 'pry-nav'
|
|
35
|
-
else
|
|
36
|
-
gem 'debug'
|
|
37
|
-
gem 'oj'
|
|
38
|
-
gem 'patron'
|
|
39
|
-
end
|
|
40
|
-
end
|