nexus_seed 0.2.16 → 0.2.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: c56d4582669b8742a96cb06df56efda328b62f4916a49f4a9adb32521facff49
4
- data.tar.gz: dc6146a31126777419cec6b29f5acf677ba0119b93e4905c6575465243f67c22
3
+ metadata.gz: 3d3dbd12f5bf9ce2db44057716e1122e95f309f4cfb26c60bb145ba316ac80df
4
+ data.tar.gz: 2c4f57ad28d9410d7cbb93bf1956829f7fbfdc2624267984701eb2a542aadeb3
5
5
  SHA512:
6
- metadata.gz: aedd5115dc4ca6a71c1b6ae574e41da3045ea8644ccd654bb0fed9f16baba4b6626cfb280d6380cfe292027de537a2f9566546b2df6715bbb86583e51c4575c6
7
- data.tar.gz: 2c5f568773a14fbd9de9c8c8fc33c683387b0e610c129524ee16ec0418ab52851193a6d9476d2b732899420efbcfbd1f9d5b9cee5d776d763e930f468dcd3498
6
+ metadata.gz: fffeb7bd540fcb3c2ef8f1b42828ec2907a46ae5d35ab81cb0245c27b6953668b106447a3f59ff067fff0a972295ee18802e2639bed821891525cd1f3106bf71
7
+ data.tar.gz: b7f5763b6008d72c7f5e75b50a38bb406de6d0fa784f3c855dee254f28fb84a5e1dc3d48740bb348766425eb175210b25e81ffe24c7f67dd87e0e4959ca8ab9b
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  module NexusSeed
3
- # Leave this as 0.2.16 in order for CI process to replace with the tagged version.
4
- VERSION = '0.2.16'
3
+ # Leave this as 0.2.18 in order for CI process to replace with the tagged version.
4
+ VERSION = '0.2.18'
5
5
  end
data/lib/nexus_seed.rb CHANGED
@@ -42,7 +42,8 @@ module NexusSeed
42
42
 
43
43
  elsif retries >= retry_limit && retry_limit != 0
44
44
  # log error stating seeding could not complete and task details
45
- logger.warn('limit reached')
45
+ logger.warn('Retry limit reached.')
46
+ abort('Seed task timeout.')
46
47
 
47
48
  else
48
49
  # sleep and increment retries
@@ -51,16 +52,18 @@ module NexusSeed
51
52
  self.retries = retries + 1
52
53
 
53
54
  # log retry attempts
54
- logger.warn("retrying after #{sleep_interval}s. Retry #{retries} of #{retry_limit}")
55
+ logger.warn("Retrying after #{sleep_interval}s. Retry #{retries} of #{retry_limit}")
55
56
 
56
57
  # call itself
57
58
  _run_internal
58
59
  end
59
60
  else
60
61
  logger.error('Will not seed in this rails env.', env: Rails.env)
62
+ abort('Seed task incorrect environment.')
61
63
  end
62
64
  rescue => e
63
65
  logger.error('Error during seed task.', exception: e)
66
+ abort('Seed task error.')
64
67
  end
65
68
 
66
69
  # retry limit
@@ -101,4 +104,17 @@ module NexusSeed
101
104
  self.retry_limit = opts[:retry_limit].to_i unless opts[:retry_limit].nil?
102
105
  self.sleep_interval = opts[:sleep_interval].to_i unless opts[:sleep_interval].nil?
103
106
  end
107
+
108
+ # Commonly used by seed tasks to see if a service is available.
109
+ def port_open?(host, port)
110
+ Timeout.timeout(1) do
111
+ socket = TCPSocket.new(host, port)
112
+ socket.close
113
+ return true
114
+ rescue Errno::ECONNREFUSED, Errno::EHOSTUNREACH
115
+ return false
116
+ end
117
+ rescue Timeout::Error
118
+ false
119
+ end
104
120
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nexus_seed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.16
4
+ version: 0.2.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johnathon Harris
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-21 00:00:00.000000000 Z
11
+ date: 2023-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nexus_semantic_logger
@@ -60,7 +60,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  requirements: []
63
- rubygems_version: 3.4.9
63
+ rubygems_version: 3.4.13
64
64
  signing_key:
65
65
  specification_version: 4
66
66
  summary: seed usage for nexus