wink_scheduler 0.0.5 → 0.0.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 +4 -4
- data/Dockerfile +1 -1
- data/lib/wink_scheduler/schedule.rb +6 -12
- data/lib/wink_scheduler/version.rb +1 -1
- data/wink_scheduler.gemspec +0 -1
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b0047803902b46c754f918e4a58527a39895d7c
|
4
|
+
data.tar.gz: fccc58d9118a7c05a637b757c305aeea3e717b83
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 862ebbee61be5b48dc2fef89393a8dd24bdfd728e28af51d3060f42c0aaac41b00efd024e17c7c66e3eb16ff1eaac21191b011a8ea1ec07a509259ff28206a03
|
7
|
+
data.tar.gz: aea703e6ab03252c74b7d12d071cf89c53b49885897eb32b8452d11ef241dc96b6e3b454c24fec36a175a23a88ff5103e8aff38764a7033a9e7c9827641dfbf1
|
data/Dockerfile
CHANGED
@@ -2,7 +2,7 @@ FROM ruby:2.1
|
|
2
2
|
MAINTAINER Joe Lanford <joe.lanford@gmail.com>
|
3
3
|
WORKDIR /wink_scheduler
|
4
4
|
RUN git clone https://github.com/joelanford/wink_scheduler.git /wink_scheduler && \
|
5
|
-
git checkout v0.0.
|
5
|
+
git checkout v0.0.6 && \
|
6
6
|
bundle install
|
7
7
|
|
8
8
|
CMD ["bundle", "exec", "bin/wink_scheduler", "/wink_scheduler/conf/schedule.yaml"]
|
@@ -3,13 +3,10 @@ require 'weather-api'
|
|
3
3
|
require 'httparty'
|
4
4
|
require 'yaml'
|
5
5
|
require 'time'
|
6
|
-
require 'rufus-scheduler'
|
7
6
|
|
8
7
|
module WinkScheduler
|
9
8
|
class Schedule
|
10
9
|
def initialize(context, opts)
|
11
|
-
@scheduler = Rufus::Scheduler.new
|
12
|
-
|
13
10
|
@logger = context[:logger]
|
14
11
|
devices = context[:devices]
|
15
12
|
groups = context[:groups]
|
@@ -39,6 +36,7 @@ module WinkScheduler
|
|
39
36
|
raise "Schedule must define 'method' option"
|
40
37
|
end
|
41
38
|
|
39
|
+
@method_args = []
|
42
40
|
if opts["method_args"]
|
43
41
|
arity = @object.method(@method).arity
|
44
42
|
if arity == 0
|
@@ -110,17 +108,13 @@ module WinkScheduler
|
|
110
108
|
end
|
111
109
|
|
112
110
|
def execute
|
111
|
+
cur_time = Time.now
|
113
112
|
next_time = get_next_time
|
113
|
+
|
114
114
|
@logger.info "Scheduled \"#{@method}#{"(" + @method_args.join(",") + ")" if @method_args}\" on #{@type} \"#{@object.name}\" at #{next_time}."
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
else
|
119
|
-
@object.send(@method)
|
120
|
-
end
|
121
|
-
end
|
122
|
-
@scheduler.join
|
123
|
-
@logger.info "Executed \"#{@method}\" on #{@type} \"#{@object.name}\"."
|
115
|
+
sleep next_time - cur_time
|
116
|
+
@object.send(@method, *@method_args)
|
117
|
+
@logger.info "Executed \"#{@method}#{"(" + @method_args.join(",") + ")" if @method_args}\" on #{@type} \"#{@object.name}\"."
|
124
118
|
end
|
125
119
|
|
126
120
|
def get_next_time
|
data/wink_scheduler.gemspec
CHANGED
@@ -21,7 +21,6 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.add_dependency "weather-api", "~> 1.2"
|
22
22
|
spec.add_dependency "winker", "~> 0.0", ">= 0.0.15"
|
23
23
|
spec.add_dependency "httparty", "~> 0.13", ">= 0.13.7"
|
24
|
-
spec.add_dependency "rufus-scheduler", "~> 3.2"
|
25
24
|
|
26
25
|
spec.add_development_dependency "bundler", "~> 1.7"
|
27
26
|
spec.add_development_dependency "rake", "~> 10.0"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wink_scheduler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joe Lanford
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-01-
|
11
|
+
date: 2016-01-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: weather-api
|
@@ -64,20 +64,6 @@ dependencies:
|
|
64
64
|
- - ">="
|
65
65
|
- !ruby/object:Gem::Version
|
66
66
|
version: 0.13.7
|
67
|
-
- !ruby/object:Gem::Dependency
|
68
|
-
name: rufus-scheduler
|
69
|
-
requirement: !ruby/object:Gem::Requirement
|
70
|
-
requirements:
|
71
|
-
- - "~>"
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
version: '3.2'
|
74
|
-
type: :runtime
|
75
|
-
prerelease: false
|
76
|
-
version_requirements: !ruby/object:Gem::Requirement
|
77
|
-
requirements:
|
78
|
-
- - "~>"
|
79
|
-
- !ruby/object:Gem::Version
|
80
|
-
version: '3.2'
|
81
67
|
- !ruby/object:Gem::Dependency
|
82
68
|
name: bundler
|
83
69
|
requirement: !ruby/object:Gem::Requirement
|