elasticsearch-drain 0.1.13 → 0.1.18

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a31db66bfab268b9baa36a02862d1dfac8dc92e53a87e287232a317afecd2f7
4
- data.tar.gz: b353ce1a26f91b4ee43053c018b6b7244ac8cf0fc018bd5873d247e23636267d
3
+ metadata.gz: 07ae3b4a6bb377e9683a62e8053b01b72d0d26a9e4aeef977cabf12642d46a85
4
+ data.tar.gz: 6ea43a33c74b41e35405b3eaf636c18281af547fb11179110ac82436b908ab7e
5
5
  SHA512:
6
- metadata.gz: b64cfa2de83d8b9bfb1da0c35de583c14c6050b74d47d1c323d43113ab29b39c7fc954ce5ba8ab2d5561138f789e52fcdf51f2bb34afd704692e9ef5c2667a2e
7
- data.tar.gz: ac1b0319c3aadceac52fc177d8c781085e182bcdb1a9ce5c24519d8af2cbc2a740d3dd311c129a386be93a0d0599c0b5ad0c1e99ebf5638adb44e78f14d8b7ea
6
+ metadata.gz: ff79b6e90b309aec0176094d00361029663c3c922164e662a9560e5faddd463095ecab9ec694914098216e8866bb9015ad5551d4e4a74c745e5744981af116df
7
+ data.tar.gz: f5f8ff84e9e4cd6452e2ac0186b82b7ff9811fd5e05dd7907c56efcdfa6fdf5011812aede95258dbbcb4c2df52f5137c809700513f5864ef36570be63a0a08c6
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 2.3.0
data/Gemfile.lock CHANGED
@@ -3,7 +3,7 @@ PATH
3
3
  specs:
4
4
  elasticsearch-drain (0.0.1)
5
5
  aws-sdk (~> 3)
6
- elasticsearch (~> 1.0)
6
+ elasticsearch (~> 7)
7
7
  thor (~> 0.19)
8
8
 
9
9
  GEM
@@ -14,7 +14,7 @@ GEM
14
14
  ansi (1.5.0)
15
15
  ast (2.4.1)
16
16
  aws-eventstream (1.1.0)
17
- aws-partitions (1.385.0)
17
+ aws-partitions (1.388.0)
18
18
  aws-sdk (3.0.1)
19
19
  aws-sdk-resources (~> 3)
20
20
  aws-sdk-accessanalyzer (1.14.0)
@@ -238,7 +238,7 @@ GEM
238
238
  aws-sdk-ebs (1.11.0)
239
239
  aws-sdk-core (~> 3, >= 3.109.0)
240
240
  aws-sigv4 (~> 1.1)
241
- aws-sdk-ec2 (1.202.0)
241
+ aws-sdk-ec2 (1.203.0)
242
242
  aws-sdk-core (~> 3, >= 3.109.0)
243
243
  aws-sigv4 (~> 1.1)
244
244
  aws-sdk-ec2instanceconnect (1.11.0)
@@ -310,7 +310,7 @@ GEM
310
310
  aws-sdk-globalaccelerator (1.25.0)
311
311
  aws-sdk-core (~> 3, >= 3.109.0)
312
312
  aws-sigv4 (~> 1.1)
313
- aws-sdk-glue (1.77.0)
313
+ aws-sdk-glue (1.78.0)
314
314
  aws-sdk-core (~> 3, >= 3.109.0)
315
315
  aws-sigv4 (~> 1.1)
316
316
  aws-sdk-greengrass (1.37.0)
@@ -343,7 +343,7 @@ GEM
343
343
  aws-sdk-inspector (1.32.0)
344
344
  aws-sdk-core (~> 3, >= 3.109.0)
345
345
  aws-sigv4 (~> 1.1)
346
- aws-sdk-iot (1.59.0)
346
+ aws-sdk-iot (1.60.0)
347
347
  aws-sdk-core (~> 3, >= 3.109.0)
348
348
  aws-sigv4 (~> 1.1)
349
349
  aws-sdk-iot1clickdevicesservice (1.26.0)
@@ -382,7 +382,7 @@ GEM
382
382
  aws-sdk-kafka (1.29.0)
383
383
  aws-sdk-core (~> 3, >= 3.109.0)
384
384
  aws-sigv4 (~> 1.1)
385
- aws-sdk-kendra (1.16.0)
385
+ aws-sdk-kendra (1.17.0)
386
386
  aws-sdk-core (~> 3, >= 3.109.0)
387
387
  aws-sigv4 (~> 1.1)
388
388
  aws-sdk-kinesis (1.30.0)
@@ -493,7 +493,7 @@ GEM
493
493
  aws-sdk-mturk (1.27.0)
494
494
  aws-sdk-core (~> 3, >= 3.109.0)
495
495
  aws-sigv4 (~> 1.1)
496
- aws-sdk-neptune (1.30.0)
496
+ aws-sdk-neptune (1.31.0)
497
497
  aws-sdk-core (~> 3, >= 3.109.0)
498
498
  aws-sigv4 (~> 1.1)
499
499
  aws-sdk-networkmanager (1.8.0)
@@ -827,7 +827,7 @@ GEM
827
827
  aws-sdk-s3outposts (1.0.0)
828
828
  aws-sdk-core (~> 3, >= 3.109.0)
829
829
  aws-sigv4 (~> 1.1)
830
- aws-sdk-sagemaker (1.70.0)
830
+ aws-sdk-sagemaker (1.71.0)
831
831
  aws-sdk-core (~> 3, >= 3.109.0)
832
832
  aws-sigv4 (~> 1.1)
833
833
  aws-sdk-sagemakerruntime (1.27.0)
@@ -944,7 +944,7 @@ GEM
944
944
  aws-sdk-worklink (1.21.0)
945
945
  aws-sdk-core (~> 3, >= 3.109.0)
946
946
  aws-sigv4 (~> 1.1)
947
- aws-sdk-workmail (1.32.0)
947
+ aws-sdk-workmail (1.33.0)
948
948
  aws-sdk-core (~> 3, >= 3.109.0)
949
949
  aws-sigv4 (~> 1.1)
950
950
  aws-sdk-workmailmessageflow (1.9.0)
@@ -962,18 +962,18 @@ GEM
962
962
  coderay (1.1.3)
963
963
  crack (0.4.4)
964
964
  docile (1.3.2)
965
- elasticsearch (1.1.3)
966
- elasticsearch-api (= 1.1.3)
967
- elasticsearch-transport (= 1.1.3)
968
- elasticsearch-api (1.1.3)
965
+ elasticsearch (7.5.0)
966
+ elasticsearch-api (= 7.5.0)
967
+ elasticsearch-transport (= 7.5.0)
968
+ elasticsearch-api (7.5.0)
969
969
  multi_json
970
970
  elasticsearch-extensions (0.0.18)
971
971
  ansi
972
972
  ruby-prof
973
- elasticsearch-transport (1.1.3)
974
- faraday
973
+ elasticsearch-transport (7.5.0)
974
+ faraday (>= 0.14, < 1)
975
975
  multi_json
976
- faraday (1.0.1)
976
+ faraday (0.17.3)
977
977
  multipart-post (>= 1.2, < 3)
978
978
  ffi (1.13.1)
979
979
  formatador (0.2.5)
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.add_development_dependency 'bundler', '~> 2.1'
22
22
  spec.add_development_dependency 'rake', '~> 10.0'
23
23
 
24
- spec.add_dependency 'elasticsearch', '~> 1.0'
24
+ spec.add_dependency 'elasticsearch', '~> 7'
25
25
  spec.add_dependency 'aws-sdk', '~> 3'
26
26
  spec.add_dependency 'thor', '~> 0.19'
27
27
  end
@@ -11,8 +11,7 @@ module Elasticsearch
11
11
 
12
12
  def health(opts = {})
13
13
  default_opts = {
14
- wait_for_status: 'green',
15
- timeout: 60
14
+ wait_for_status: 'green'
16
15
  }
17
16
  opts = default_opts.merge(opts)
18
17
  cluster.health(opts)
@@ -50,10 +50,21 @@ module Elasticsearch
50
50
  end
51
51
 
52
52
  # The Elasticsearch node ipaddress
53
+ #
54
+ # For ES v1.x, we must extract and modify the IP
55
+ # address from the http_address key. For all later
56
+ # versions, we can use the host key directly.
57
+ # That's why we check with the if/else statement.
53
58
  #
54
59
  # @return [String] Elasticsearch node ipaddress
55
60
  def ipaddress
56
- address(info[1]['http_address']).split(':')[0]
61
+ block = /\d{,2}|1\d{2}|2[0-4]\d|25[0-5]/
62
+ re = /\A#{block}\.#{block}\.#{block}\.#{block}\z/
63
+ if info[1]['host'] && re =~ info[1]['host']
64
+ info[1]['host']
65
+ else
66
+ address(info[1]['http_address']).split(':')[0]
67
+ end
57
68
  end
58
69
 
59
70
  # The Elasticsearch node Transport Address
@@ -86,7 +97,10 @@ module Elasticsearch
86
97
  end
87
98
 
88
99
  def in_recovery?
89
- recovery = client.cat.recovery(format: 'json', v: true).first.values
100
+ recovery = client.cat.recovery(format: 'json', v: true)
101
+ if recovery.first != nil
102
+ recovery = recovery.first.values
103
+ end
90
104
  [hostname, name].any? { |a| recovery.include?(a) }
91
105
  end
92
106
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elasticsearch-drain
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.13
4
+ version: 0.1.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Thompson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-23 00:00:00.000000000 Z
11
+ date: 2021-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.0'
47
+ version: '7'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.0'
54
+ version: '7'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: aws-sdk
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -92,6 +92,7 @@ files:
92
92
  - ".gitignore"
93
93
  - ".rubocop.yml"
94
94
  - ".rubocop_todo.yml"
95
+ - ".ruby-version"
95
96
  - ".travis.yml"
96
97
  - Gemfile
97
98
  - Gemfile.lock
@@ -141,8 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
141
142
  - !ruby/object:Gem::Version
142
143
  version: '0'
143
144
  requirements: []
144
- rubyforge_project:
145
- rubygems_version: 2.7.7
145
+ rubygems_version: 3.2.14
146
146
  signing_key:
147
147
  specification_version: 4
148
148
  summary: Elasticsearch node replacement utility that tries to keep the cluster healthy