ruby-clock 0.4.0 → 0.5.0

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: 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: []