lolcommits-protonet 0.0.2 → 0.0.3
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 +5 -5
- data/.travis.yml +5 -4
- data/lib/lolcommits/plugin/protonet.rb +4 -35
- data/lib/lolcommits/protonet/version.rb +1 -1
- data/lolcommits-protonet.gemspec +1 -1
- data/test/lolcommits/plugin/protonet_test.rb +13 -35
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 5d5c6d6dcf571bb25ddafc41ae5e6310279d7add83e7c72180bd5235676ed78b
|
4
|
+
data.tar.gz: 922722865b187778e492c352deecf0e6f81888fc3ac926fb4d6598257a1bc42c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 052c32971e12c4ff0bfb6964a81d976befd08ebdcdd84690e2207a03566423be608ce1c8eed1d90912d97c3e0509936df13b1ae0b98468ef041b21f9f5425bf9
|
7
|
+
data.tar.gz: 988be000eba92897f14fce1decdf29a2534da8f7b8693ddd97b34f23fbdd1c2b129caa5fd9a3c8d62f76eedf5ac7413e136d11b43b6fc570b1484982303c4c7f
|
data/.travis.yml
CHANGED
@@ -4,13 +4,14 @@ cache: bundler
|
|
4
4
|
rvm:
|
5
5
|
- 2.0.0
|
6
6
|
- 2.1.10
|
7
|
-
- 2.2.
|
8
|
-
- 2.3.
|
9
|
-
- 2.4.
|
7
|
+
- 2.2.9
|
8
|
+
- 2.3.6
|
9
|
+
- 2.4.3
|
10
|
+
- 2.5.0
|
10
11
|
- ruby-head
|
11
12
|
|
12
13
|
before_install:
|
13
|
-
- gem
|
14
|
+
- gem update --system
|
14
15
|
- git --version
|
15
16
|
- git config --global user.email "lol@commits.org"
|
16
17
|
- git config --global user.name "Lolcommits"
|
@@ -10,16 +10,7 @@ module Lolcommits
|
|
10
10
|
#
|
11
11
|
def initialize(runner: nil, config: nil)
|
12
12
|
super
|
13
|
-
options.concat(
|
14
|
-
end
|
15
|
-
|
16
|
-
##
|
17
|
-
# Returns the name of the plugin to identify the plugin to lolcommits.
|
18
|
-
#
|
19
|
-
# @return [String] the plugin name
|
20
|
-
#
|
21
|
-
def self.name
|
22
|
-
'protonet'
|
13
|
+
options.concat([:api_endpoint, :api_token])
|
23
14
|
end
|
24
15
|
|
25
16
|
##
|
@@ -49,18 +40,6 @@ module Lolcommits
|
|
49
40
|
super
|
50
41
|
end
|
51
42
|
|
52
|
-
##
|
53
|
-
# Returns true if the plugin has been configured.
|
54
|
-
#
|
55
|
-
# @return [Boolean] true/false indicating if plugin is configured. An API
|
56
|
-
# token and endpoint are required.
|
57
|
-
#
|
58
|
-
def configured?
|
59
|
-
!!(configuration['enabled'] &&
|
60
|
-
configuration['api_token'] &&
|
61
|
-
configuration['api_endpoint'])
|
62
|
-
end
|
63
|
-
|
64
43
|
##
|
65
44
|
# Post-capture hook, runs after lolcommits captures a snapshot. Posts the
|
66
45
|
# lolcommit image with a message to the Protonet box. API Documentation
|
@@ -70,14 +49,14 @@ module Lolcommits
|
|
70
49
|
# @return [Nil] if any error occurs
|
71
50
|
#
|
72
51
|
def run_capture_ready
|
73
|
-
debug "Posting image (and message) to #{configuration[
|
52
|
+
debug "Posting image (and message) to #{configuration[:api_endpoint]}"
|
74
53
|
RestClient.post(
|
75
|
-
configuration[
|
54
|
+
configuration[:api_endpoint],
|
76
55
|
{
|
77
56
|
files: [File.new(runner.main_image)],
|
78
57
|
message: message
|
79
58
|
},
|
80
|
-
'X-Protonet-Token' => configuration[
|
59
|
+
'X-Protonet-Token' => configuration[:api_token]
|
81
60
|
)
|
82
61
|
rescue => e
|
83
62
|
log_error(e, "ERROR: RestClient POST FAILED #{e.class} - #{e.message}")
|
@@ -125,16 +104,6 @@ module Lolcommits
|
|
125
104
|
'heartbleeding', 'juciy', 'supercalifragilisticexpialidocious', 'failing', 'loving'
|
126
105
|
].sample
|
127
106
|
end
|
128
|
-
|
129
|
-
##
|
130
|
-
# Returns all configuration options available for this plugin. An API
|
131
|
-
# endpoint and token.
|
132
|
-
#
|
133
|
-
# @return [Array] the option names
|
134
|
-
#
|
135
|
-
def plugin_options
|
136
|
-
%w(api_endpoint api_token)
|
137
|
-
end
|
138
107
|
end
|
139
108
|
end
|
140
109
|
end
|
data/lolcommits-protonet.gemspec
CHANGED
@@ -36,7 +36,7 @@ Gem::Specification.new do |spec|
|
|
36
36
|
|
37
37
|
spec.add_runtime_dependency "rest-client"
|
38
38
|
|
39
|
-
spec.add_development_dependency "lolcommits", ">= 0.
|
39
|
+
spec.add_development_dependency "lolcommits", ">= 0.10.0"
|
40
40
|
spec.add_development_dependency "bundler"
|
41
41
|
spec.add_development_dependency "webmock"
|
42
42
|
spec.add_development_dependency "pry"
|
@@ -5,14 +5,6 @@ describe Lolcommits::Plugin::Protonet do
|
|
5
5
|
include Lolcommits::TestHelpers::GitRepo
|
6
6
|
include Lolcommits::TestHelpers::FakeIO
|
7
7
|
|
8
|
-
def plugin_name
|
9
|
-
"protonet"
|
10
|
-
end
|
11
|
-
|
12
|
-
it "should have a name" do
|
13
|
-
::Lolcommits::Plugin::Protonet.name.must_equal plugin_name
|
14
|
-
end
|
15
|
-
|
16
8
|
it "should run on capture ready" do
|
17
9
|
::Lolcommits::Plugin::Protonet.runner_order.must_equal [:capture_ready]
|
18
10
|
end
|
@@ -22,7 +14,6 @@ describe Lolcommits::Plugin::Protonet do
|
|
22
14
|
# a simple lolcommits runner with an empty configuration Hash
|
23
15
|
@runner ||= Lolcommits::Runner.new(
|
24
16
|
main_image: Tempfile.new('main_image.jpg'),
|
25
|
-
config: OpenStruct.new(read_configuration: {})
|
26
17
|
)
|
27
18
|
end
|
28
19
|
|
@@ -31,15 +22,11 @@ describe Lolcommits::Plugin::Protonet do
|
|
31
22
|
end
|
32
23
|
|
33
24
|
def valid_enabled_config
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
"api_token" => "proto-token"
|
40
|
-
}
|
41
|
-
}
|
42
|
-
)
|
25
|
+
{
|
26
|
+
enabled: true,
|
27
|
+
api_endpoint: api_endpoint,
|
28
|
+
api_token: "proto-token"
|
29
|
+
}
|
43
30
|
end
|
44
31
|
|
45
32
|
def api_endpoint
|
@@ -49,17 +36,17 @@ describe Lolcommits::Plugin::Protonet do
|
|
49
36
|
describe "initalizing" do
|
50
37
|
it "assigns runner and all plugin options" do
|
51
38
|
plugin.runner.must_equal runner
|
52
|
-
plugin.options.must_equal
|
39
|
+
plugin.options.must_equal [:enabled, :api_endpoint, :api_token]
|
53
40
|
end
|
54
41
|
end
|
55
42
|
|
56
43
|
describe "#enabled?" do
|
57
44
|
it "is false by default" do
|
58
|
-
plugin.enabled
|
45
|
+
assert_nil plugin.enabled?
|
59
46
|
end
|
60
47
|
|
61
48
|
it "is true when configured" do
|
62
|
-
plugin.
|
49
|
+
plugin.configuration = valid_enabled_config
|
63
50
|
plugin.enabled?.must_equal true
|
64
51
|
end
|
65
52
|
end
|
@@ -70,7 +57,7 @@ describe Lolcommits::Plugin::Protonet do
|
|
70
57
|
|
71
58
|
it "posts lolcommit with message to protonet box" do
|
72
59
|
in_repo do
|
73
|
-
plugin.
|
60
|
+
plugin.configuration = valid_enabled_config
|
74
61
|
|
75
62
|
stub_request(:post, api_endpoint).to_return(status: 200)
|
76
63
|
|
@@ -87,7 +74,7 @@ describe Lolcommits::Plugin::Protonet do
|
|
87
74
|
|
88
75
|
it "returns nil if an error occurs" do
|
89
76
|
in_repo do
|
90
|
-
plugin.
|
77
|
+
plugin.configuration = valid_enabled_config
|
91
78
|
stub_request(:post, api_endpoint).to_return(status: 501)
|
92
79
|
|
93
80
|
assert_nil plugin.run_capture_ready
|
@@ -96,15 +83,6 @@ describe Lolcommits::Plugin::Protonet do
|
|
96
83
|
end
|
97
84
|
|
98
85
|
describe "configuration" do
|
99
|
-
it "returns false when not configured" do
|
100
|
-
plugin.configured?.must_equal false
|
101
|
-
end
|
102
|
-
|
103
|
-
it "returns true when configured" do
|
104
|
-
plugin.config = valid_enabled_config
|
105
|
-
plugin.configured?.must_equal true
|
106
|
-
end
|
107
|
-
|
108
86
|
it "allows plugin options to be configured" do
|
109
87
|
# enabled, api endpoint, api token
|
110
88
|
inputs = %W(true #{api_endpoint} proto-token)
|
@@ -116,9 +94,9 @@ describe Lolcommits::Plugin::Protonet do
|
|
116
94
|
end
|
117
95
|
|
118
96
|
configured_plugin_options.must_equal({
|
119
|
-
|
120
|
-
|
121
|
-
|
97
|
+
enabled: true,
|
98
|
+
api_endpoint: api_endpoint,
|
99
|
+
api_token: inputs[2]
|
122
100
|
})
|
123
101
|
end
|
124
102
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lolcommits-protonet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew Hutchinson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.
|
33
|
+
version: 0.10.0
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.
|
40
|
+
version: 0.10.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -168,7 +168,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
168
168
|
version: '0'
|
169
169
|
requirements: []
|
170
170
|
rubyforge_project:
|
171
|
-
rubygems_version: 2.
|
171
|
+
rubygems_version: 2.7.3
|
172
172
|
signing_key:
|
173
173
|
specification_version: 4
|
174
174
|
summary: Posts lolcommits to a Protonet box
|