elastic_manager 0.3.1 → 0.3.6

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: 3bbd15e2da30e4a11d0dc0c3b32ea03b356579ceabe146c3f91015e2a7749ba1
4
- data.tar.gz: 82c74c8b34544c38ac72c1ac62552fbb630261280f397305c0536ebf69974822
3
+ metadata.gz: fd391f78658812583275fc9020e0619bf72ff0db870cee4d49bd82788b45dfb2
4
+ data.tar.gz: b3a32961e8477a22b736d13c20afa81581b72f0a174c8a9d4016c2b85827e39d
5
5
  SHA512:
6
- metadata.gz: b4144e9edfb97ab8f243bec70759f8ff370f8c74a8194a128ca746125e96df461a67c2f6a77ad7052f1569f6f411efe7779c5cafcfd83caa2c7a78aeff2f0309
7
- data.tar.gz: 8993611c5a89371964e03b45c370dca3f243aec520108985c3785c731509becfab5740a83b6235b7945f105fadffee215f58d60c60c80545bca039eefbcf08ee
6
+ metadata.gz: 07ed650f13e9c63a128a74992b557b3f1ab3d5afc3e6f64b065c4c73ea869adadb8817696946e466079ba18dd1879aca9df0759094e4fd1dc6c43e999daffe87
7
+ data.tar.gz: 1bbf27bc2a26b942acd9a3f5cdc9aadc8006cc32e4efc48fc754d5f4acb31e15d41731988758c5be151d7ea6246ca90cc9fa35af47aa5da99f7fc1d22a5474f7
@@ -3,7 +3,7 @@
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'elastic_manager'
5
5
  s.executables = ['elastic_manager']
6
- s.version = '0.3.1'
6
+ s.version = '0.3.6'
7
7
  s.date = '2018-10-15'
8
8
  s.summary = 'Because qurator sucks'
9
9
  s.description = 'Manager for logstash indices in elastic'
@@ -17,6 +17,6 @@ Gem::Specification.new do |s|
17
17
  s.add_dependency 'colorize', '~> 0.8'
18
18
  s.add_dependency 'dotenv', '~> 2.4'
19
19
  s.add_dependency 'http', '~> 3.3'
20
- s.add_dependency 'rake', '~> 12.3'
20
+ s.add_dependency 'rake', '>= 12.3', '< 14.0'
21
21
  s.add_dependency 'yajl-ruby', '~> 1.4'
22
22
  end
@@ -29,7 +29,7 @@ module Config
29
29
 
30
30
  default['es']['url'] = 'http://127.0.0.1:9200'
31
31
  default['retry'] = '10'
32
- default['sleep'] = '60'
32
+ default['sleep'] = '30'
33
33
  default['force'] = 'false'
34
34
  default['timeout']['write'] = '2'
35
35
  default['timeout']['connect'] = '3'
@@ -35,6 +35,8 @@ module Open
35
35
  end
36
36
 
37
37
  def do_open(indices)
38
+ results = []
39
+
38
40
  indices.each do |index|
39
41
  next if skip_index?(index, 'open')
40
42
 
@@ -43,14 +45,24 @@ module Open
43
45
  if index_exist?(response)
44
46
  next if already?(response, 'open')
45
47
 
46
- elastic_action_with_log('open_index', index)
48
+ results << elastic_action_with_log('open_index', index)
47
49
  else
48
50
  log.warn "#{index} index not found"
49
51
  log.info "#{index} trying snapshot restore"
50
52
 
51
- elastic_action_with_log('restore_snapshot', index, @config['settings']['box_types']['store'])
53
+ results << elastic_action_with_log('restore_snapshot', index, @config['settings']['box_types']['store'])
52
54
  end
53
55
  end
56
+
57
+ if results.empty?
58
+ log.warn 'looks like we skipped all indices'
59
+ exit 0
60
+ end
61
+
62
+ exit 1 if results.all? { |e| e.is_a?(FalseClass) }
63
+ # It is little bit confusing, but we catch exit code 2 in jenkins
64
+ # for mark build as unstable instead of just fail it
65
+ exit 2 if results.any? { |e| e.is_a?(FalseClass) }
54
66
  end
55
67
 
56
68
  def open
@@ -90,7 +90,7 @@ module Request
90
90
  result = []
91
91
  all_snapshots.each do |snap|
92
92
  begin
93
- snap_date = Date.parse(snap['id'].delete('-'))
93
+ snap_date = Date.parse(snap['id'].split('-').last)
94
94
  rescue ArgumentError => e
95
95
  log.error "#{e.message} for #{index}"
96
96
  next
@@ -133,7 +133,7 @@ module Request
133
133
  result = []
134
134
  indices.each do |index, _|
135
135
  begin
136
- index_date = Date.parse(index.delete('-'))
136
+ index_date = Date.parse(index.split('-').last)
137
137
  rescue ArgumentError => e
138
138
  log.error "#{e.message} for #{index}"
139
139
  next
@@ -341,7 +341,7 @@ module Request
341
341
  snapshot_ok = false
342
342
 
343
343
  until snapshot_ok
344
- sleep @sleep
344
+ sleep @sleep / 2
345
345
  response = request(:get, "/_snapshot/#{repo}/#{snapshot}/_status")
346
346
 
347
347
  if response.code == 200
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elastic_manager
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Antony Ryabov
@@ -56,16 +56,22 @@ dependencies:
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '12.3'
62
+ - - "<"
63
+ - !ruby/object:Gem::Version
64
+ version: '14.0'
62
65
  type: :runtime
63
66
  prerelease: false
64
67
  version_requirements: !ruby/object:Gem::Requirement
65
68
  requirements:
66
- - - "~>"
69
+ - - ">="
67
70
  - !ruby/object:Gem::Version
68
71
  version: '12.3'
72
+ - - "<"
73
+ - !ruby/object:Gem::Version
74
+ version: '14.0'
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: yajl-ruby
71
77
  requirement: !ruby/object:Gem::Requirement
@@ -123,8 +129,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
129
  - !ruby/object:Gem::Version
124
130
  version: '0'
125
131
  requirements: []
126
- rubyforge_project:
127
- rubygems_version: 2.7.8
132
+ rubygems_version: 3.0.8
128
133
  signing_key:
129
134
  specification_version: 4
130
135
  summary: Because qurator sucks