headsail 0.1.11 → 0.1.12
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/bin/headsail +0 -1
- data/headsail.gemspec +1 -0
- data/lib/headsail/api.rb +4 -1
- data/lib/headsail/cli.rb +1 -2
- data/lib/headsail/client.rb +1 -0
- data/lib/headsail/configure.rb +3 -0
- data/lib/headsail/redis.rb +6 -0
- data/lib/headsail/task.rb +12 -3
- data/lib/headsail/util.rb +13 -0
- data/lib/headsail/version.rb +1 -1
- data/lib/headsail.rb +3 -0
- metadata +16 -2
- data/lib/headsail/event.rb +0 -15
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7cff3d768d1f66dfcc566bcffba3b57079a4c939
|
|
4
|
+
data.tar.gz: 769397d2aaccfc574b68a1082265c0fd559b681b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c8808ff0aea3de8e240496e803d9d34010b7dbbcf4ad2b8d0a2fe70318dcb26044d57ef0a84ec5768e14a79b7b6596e064e94182433388cea90feb50a2251f04
|
|
7
|
+
data.tar.gz: a95313f9cf3b212b58b40e4bb79af86886a89cfe1457f2d450a8c9986127be0e844b3806b520437438dac71a1939fff72046ded03138a100036e2ec9aac33e16
|
data/bin/headsail
CHANGED
data/headsail.gemspec
CHANGED
data/lib/headsail/api.rb
CHANGED
|
@@ -4,10 +4,13 @@ module Headsail
|
|
|
4
4
|
|
|
5
5
|
def initialize(config)
|
|
6
6
|
@name = config['name']
|
|
7
|
-
@timer = config['timer']
|
|
7
|
+
@timer = config['timer'].to_i
|
|
8
8
|
@oauth = config['oauth']
|
|
9
9
|
@method = config['request']['method']
|
|
10
10
|
@uri = build_uri(config['request'])
|
|
11
|
+
rescue
|
|
12
|
+
Headsail.err('Improper API YAML format.')
|
|
13
|
+
exit 1
|
|
11
14
|
end
|
|
12
15
|
|
|
13
16
|
private
|
data/lib/headsail/cli.rb
CHANGED
|
@@ -11,7 +11,6 @@ module Headsail
|
|
|
11
11
|
# Creates a new CLI object, parsing the arguments that are passed to it,
|
|
12
12
|
# and readying a Launcher to be run
|
|
13
13
|
#
|
|
14
|
-
# @param argv [Array] an array of command-line arguments
|
|
15
14
|
def initialize(argv)
|
|
16
15
|
@argv = argv
|
|
17
16
|
@configure = nil
|
|
@@ -57,7 +56,7 @@ module Headsail
|
|
|
57
56
|
def parse_options
|
|
58
57
|
@parser.parse!(@argv)
|
|
59
58
|
rescue
|
|
60
|
-
|
|
59
|
+
Headsail.err('Unsupported options entered in CLI.')
|
|
61
60
|
exit 1
|
|
62
61
|
end
|
|
63
62
|
end
|
data/lib/headsail/client.rb
CHANGED
data/lib/headsail/configure.rb
CHANGED
data/lib/headsail/redis.rb
CHANGED
|
@@ -14,6 +14,8 @@ module Headsail
|
|
|
14
14
|
def add(data)
|
|
15
15
|
@connection.incr(next_id_key)
|
|
16
16
|
@connection.set(new_key, data)
|
|
17
|
+
rescue
|
|
18
|
+
setup_connection
|
|
17
19
|
end
|
|
18
20
|
|
|
19
21
|
private
|
|
@@ -32,6 +34,10 @@ module Headsail
|
|
|
32
34
|
|
|
33
35
|
def setup_connection
|
|
34
36
|
@connection = ::Redis.new(url: ENV['REDIS_URL'])
|
|
37
|
+
@connection.ping
|
|
38
|
+
rescue
|
|
39
|
+
Headsail.err("Failed to connect to Redis server at ENV 'REDIS_URL'.")
|
|
40
|
+
exit 1
|
|
35
41
|
end
|
|
36
42
|
|
|
37
43
|
def setup_service
|
data/lib/headsail/task.rb
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
require 'concurrent'
|
|
2
2
|
require 'headsail/api'
|
|
3
|
-
require 'headsail/event'
|
|
4
3
|
require 'headsail/http'
|
|
5
4
|
require 'headsail/redis'
|
|
6
5
|
|
|
@@ -10,14 +9,24 @@ module Headsail
|
|
|
10
9
|
@api = API.new(config)
|
|
11
10
|
@redis = Redis.new(@api.name)
|
|
12
11
|
@http = HTTP.new(@api)
|
|
13
|
-
|
|
12
|
+
Headsail.info("API Task '#{@api.name}' added.")
|
|
14
13
|
end
|
|
15
14
|
|
|
16
15
|
def run
|
|
17
16
|
Concurrent::TimerTask.new(execution_interval: @api.timer) do
|
|
18
17
|
@redis.add(@http.body) if @http.run
|
|
19
|
-
|
|
18
|
+
request_message
|
|
20
19
|
end
|
|
21
20
|
end
|
|
21
|
+
|
|
22
|
+
private
|
|
23
|
+
|
|
24
|
+
def request_message
|
|
25
|
+
@http.code_status == :SUCCESS ? Headsail.info(msg) : Headsail.err(msg)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def msg
|
|
29
|
+
"#{@api.name} / #{@api.method} REQUEST / #{@http.code} - #{@http.code_status.to_s}"
|
|
30
|
+
end
|
|
22
31
|
end
|
|
23
32
|
end
|
data/lib/headsail/version.rb
CHANGED
data/lib/headsail.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: headsail
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.12
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Nicholas Sweeting
|
|
@@ -94,6 +94,20 @@ dependencies:
|
|
|
94
94
|
- - "~>"
|
|
95
95
|
- !ruby/object:Gem::Version
|
|
96
96
|
version: '5.0'
|
|
97
|
+
- !ruby/object:Gem::Dependency
|
|
98
|
+
name: byebug
|
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
|
100
|
+
requirements:
|
|
101
|
+
- - "~>"
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: '5.0'
|
|
104
|
+
type: :development
|
|
105
|
+
prerelease: false
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
requirements:
|
|
108
|
+
- - "~>"
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: '5.0'
|
|
97
111
|
description: Automated API data retrieval and storage.
|
|
98
112
|
email:
|
|
99
113
|
- nsweeting@gmail.com
|
|
@@ -118,12 +132,12 @@ files:
|
|
|
118
132
|
- lib/headsail/cli.rb
|
|
119
133
|
- lib/headsail/client.rb
|
|
120
134
|
- lib/headsail/configure.rb
|
|
121
|
-
- lib/headsail/event.rb
|
|
122
135
|
- lib/headsail/http.rb
|
|
123
136
|
- lib/headsail/launcher.rb
|
|
124
137
|
- lib/headsail/oauth.rb
|
|
125
138
|
- lib/headsail/redis.rb
|
|
126
139
|
- lib/headsail/task.rb
|
|
140
|
+
- lib/headsail/util.rb
|
|
127
141
|
- lib/headsail/version.rb
|
|
128
142
|
homepage:
|
|
129
143
|
licenses:
|
data/lib/headsail/event.rb
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
require 'logger'
|
|
2
|
-
|
|
3
|
-
module Headsail
|
|
4
|
-
class Event
|
|
5
|
-
def initialize(event_name)
|
|
6
|
-
@event_name = event_name
|
|
7
|
-
@logger = Logger.new(STDOUT)
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
def request(http, method)
|
|
11
|
-
message = "#{@event_name} / #{method} REQUEST / #{http.code} - #{http.code_status.to_s}"
|
|
12
|
-
@logger.info(message)
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|