elastic_manager 0.3.1 → 0.3.6

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 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