ruby-clock 0.4.0 → 0.5.0

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: 9e7cabf65e0ef766c40ec6fc04215eb1feed1ee46ee1686e7e945aabfb2b31e5
4
- data.tar.gz: dbb284e75da2dd6ffb3cd17475c7b9d759b7651ca659009b6bccd8516c775907
3
+ metadata.gz: aecbbec2f68af72734fdb4daed9bbe35b47b3b012a2074915241eac7f8b6c40a
4
+ data.tar.gz: 3bef0b2f87eb30ca32e5cd142249ef7a4ef1c34deb2714dc76cb2ecab3754600
5
5
  SHA512:
6
- metadata.gz: e59fb32b2617359c1cc38dc527441023ca884fc19eb5bd5bfaf91aa9b8f2482642ff1c9fefaf9e3e8df9659c31579242dab41af023b8c070bcbedf1430f0b5d5
7
- data.tar.gz: 36582826edd5054d9a84afa1df660570fa761dbc7c588a87600e79a0f85fcaae2a3e419e6660a72f9a777daffb54380cf7c2a8222f98207565139777374abd43
6
+ metadata.gz: 9cb10c6514f7e28394632e6fbd76b19e2666ede782cf344918aeea3eaa368e318b7ee3135b7c252208c8f0090657b629cd469eaa704b0b908ce34fa213735213
7
+ data.tar.gz: 943997440dfb369138ad5084497dbdd76504d030d58c5508eced067930205171089518a752b42a3b7cf398dc5560a9ab8ecb70b0dc01f35188c3380853a23738
data/README.md CHANGED
@@ -57,9 +57,13 @@ To start your clock process:
57
57
 
58
58
  ### Rails
59
59
 
60
+ Install the `clock` binstub and commit to your repo.
61
+
62
+ bundle binstubs ruby-clock
63
+
60
64
  To run your clock process in your app's environment:
61
65
 
62
- bundle exec rails runner clock
66
+ bundle exec rails runner bin/clock
63
67
 
64
68
  ### Non-Rails
65
69
 
@@ -76,7 +80,7 @@ schedule.every('5 minutes') do
76
80
  Add this line to your Procfile
77
81
 
78
82
  ```
79
- clock: bundle exec rails runer clock
83
+ clock: bundle exec rails runner bin/clock
80
84
  ```
81
85
 
82
86
  ## More Config and Capabilities
@@ -3,14 +3,22 @@ require 'rufus-scheduler'
3
3
 
4
4
  module RubyClock
5
5
  def shutdown
6
- puts "Shutting down 🐈️ 👋"
7
- puts Rufus::Scheduler.singleton.shutdown(wait: 29)
8
- exit
6
+ puts "Shutting down ruby-clock 🐈️ 👋"
7
+ Rufus::Scheduler.singleton.shutdown(wait: 29)
9
8
  end
10
9
 
11
10
  def listen_to_signals
12
- Signal.trap('INT') { shutdown }
13
- Signal.trap('TERM') { shutdown }
11
+ signals = %w[INT TERM]
12
+ signals.each do |signal|
13
+ old_handler = Signal.trap(signal) do
14
+ shutdown
15
+ if old_handler.respond_to?(:call)
16
+ old_handler.call
17
+ else
18
+ exit
19
+ end
20
+ end
21
+ end
14
22
  end
15
23
 
16
24
  def schedule
@@ -18,6 +26,7 @@ module RubyClock
18
26
  end
19
27
 
20
28
  def run_jobs
29
+ puts "Starting ruby-clock with #{schedule.jobs.size} jobs"
21
30
  Rufus::Scheduler.singleton.join
22
31
  end
23
32
  end
@@ -1,3 +1,3 @@
1
1
  module RubyClock
2
- VERSION = "0.4.0"
2
+ VERSION = "0.5.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-clock
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Bachir
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-31 00:00:00.000000000 Z
11
+ date: 2021-01-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rufus-scheduler
@@ -24,7 +24,7 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.7'
27
- description:
27
+ description:
28
28
  email:
29
29
  - j@jjb.cc
30
30
  executables:
@@ -50,7 +50,7 @@ licenses:
50
50
  metadata:
51
51
  homepage_uri: https://github.com/jjb/ruby-clock
52
52
  source_code_uri: https://github.com/jjb/ruby-clock
53
- post_install_message:
53
+ post_install_message:
54
54
  rdoc_options: []
55
55
  require_paths:
56
56
  - lib
@@ -66,7 +66,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
66
66
  version: '0'
67
67
  requirements: []
68
68
  rubygems_version: 3.1.2
69
- signing_key:
69
+ signing_key:
70
70
  specification_version: 4
71
71
  summary: A "clock" process for invoking ruby code within a persistent runtime
72
72
  test_files: []