slackit 1.1.10 → 1.1.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -0
- data/CHANGELOG.md +21 -17
- data/README.md +29 -2
- data/exe/slackit +25 -11
- data/lib/slackit.rb +50 -10
- data/lib/slackit/version.rb +1 -1
- data/slackit.gemspec +6 -2
- data/spec/slackit_spec.rb +0 -4
- data/testing/slackit +25 -11
- metadata +36 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ffac7badefe83f4137bae067ecd1b64aff9c0bd0dcab7ed9292f885f875f6847
|
4
|
+
data.tar.gz: 65bc3f113eb2622a8e321ee63b66147364fd4e57d5ec47573fd0f1be3ef4ecd8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 49cdf3c9cb84a8d3d2eaac5b059fe4a7879ede779a1052b9b755487dcca1f5c7b44a06b7641aeba5acc25a714a6b315ab84395534a7311b314bc5b3f108c6ac6
|
7
|
+
data.tar.gz: e451640c4d2565909f4354834dd19eea3872883bc2fff0bc804bb1fc8ed938c5183325cbc9690153634661e8c9ad79adc6c0d47af15ffdec6a68e719eb1be498
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -5,11 +5,19 @@ All notable changes to this project will be documented in this file.
|
|
5
5
|
|
6
6
|
This changelog was automatically generated using [Caretaker](https://github.com/AntiPhotonltd/slackit) by [Wolf Software](https://github.com/WolfSoftware)
|
7
7
|
|
8
|
-
### [
|
8
|
+
### [Unreleased](https://github.com/AntiPhotonltd/slackit/compare/v1.1.10...HEAD)
|
9
|
+
|
10
|
+
- Pre-release push and test [`[head]`](https://github.com/AntiPhotonltd/slackit/commit/) [`[TGWolf]`](https://github.com/TGWolf)
|
11
|
+
|
12
|
+
- Fix rake and bundle errors [`[4eb94e5]`](https://github.com/AntiPhotonltd/slackit/commit/4eb94e573cae25be2b616f25b6987b510b7f6395) [`[TGWolf]`](https://github.com/TGWolf)
|
13
|
+
|
14
|
+
- Added better validation of slack webhook urls including a cli option to validate a hook, also replace httpary with net/http for more control [`[150b522]`](https://github.com/AntiPhotonltd/slackit/commit/150b522104e285c7cb59b1366fa132c06ec68518) [`[TGWolf]`](https://github.com/TGWolf)
|
15
|
+
|
16
|
+
### [v1.1.9](https://github.com/AntiPhotonltd/slackit/compare/v1.1.8...v1.1.9)
|
9
17
|
|
10
18
|
> Released on July, 31st 2020
|
11
19
|
|
12
|
-
- Bump version ready for release [`[
|
20
|
+
- Bump version ready for release [`[1f236b2]`](https://github.com/AntiPhotonltd/slackit/commit/1f236b290312173c2b25a9f1f08e65f181b68648) [`[TGWolf]`](https://github.com/TGWolf)
|
13
21
|
|
14
22
|
- Update readme to new verrsion [`[a9263c0]`](https://github.com/AntiPhotonltd/slackit/commit/a9263c04d5405ee46116c0ee4a5a1dbd46e25102) [`[TGWolf]`](https://github.com/TGWolf)
|
15
23
|
|
@@ -19,7 +27,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
19
27
|
|
20
28
|
- Add attachments and blocks [`[3a84400]`](https://github.com/AntiPhotonltd/slackit/commit/3a844009d445b3684032fb5546baa95ebf219fd9) [`[TGWolf]`](https://github.com/TGWolf)
|
21
29
|
|
22
|
-
### [v1.1.
|
30
|
+
### [v1.1.8](https://github.com/AntiPhotonltd/slackit/compare/v1.1.7...v1.1.8)
|
23
31
|
|
24
32
|
> Released on March, 9th 2020
|
25
33
|
|
@@ -27,7 +35,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
27
35
|
|
28
36
|
- Fix a typo in link checking job [`[e8ba2a6]`](https://github.com/AntiPhotonltd/slackit/commit/e8ba2a61b6b44adabdbf03d2160a8693f5f41b0a) [`[TGWolf]`](https://github.com/TGWolf)
|
29
37
|
|
30
|
-
### [v1.1.
|
38
|
+
### [v1.1.7](https://github.com/AntiPhotonltd/slackit/compare/v1.1.6...v1.1.7)
|
31
39
|
|
32
40
|
> Released on March, 9th 2020
|
33
41
|
|
@@ -35,7 +43,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
35
43
|
|
36
44
|
- Fix gemfile ruby version [`[fb0d2dc]`](https://github.com/AntiPhotonltd/slackit/commit/fb0d2dc6618b9fcf04c8730b827ad7e0fbc0001c) [`[TGWolf]`](https://github.com/TGWolf)
|
37
45
|
|
38
|
-
### [v1.1.
|
46
|
+
### [v1.1.6](https://github.com/AntiPhotonltd/slackit/compare/v1.1.5...v1.1.6)
|
39
47
|
|
40
48
|
> Released on March, 9th 2020
|
41
49
|
|
@@ -55,7 +63,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
55
63
|
|
56
64
|
- badges [`[d2c017b]`](https://github.com/AntiPhotonltd/slackit/commit/d2c017b7b1548c2544b24a8fc5d4d12f6d54c915) [`[TGWolf]`](https://github.com/TGWolf)
|
57
65
|
|
58
|
-
### [v1.1.
|
66
|
+
### [v1.1.5](https://github.com/AntiPhotonltd/slackit/compare/v1.1.4...v1.1.5)
|
59
67
|
|
60
68
|
> Released on September, 30th 2019
|
61
69
|
|
@@ -67,7 +75,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
67
75
|
|
68
76
|
- typos [`[5cd43c8]`](https://github.com/AntiPhotonltd/slackit/commit/5cd43c86649e93fd8a97ec6a598a5295f4812267) [`[TGWolf]`](https://github.com/TGWolf)
|
69
77
|
|
70
|
-
### [v1.1.
|
78
|
+
### [v1.1.4](https://github.com/AntiPhotonltd/slackit/compare/v1.1.3...v1.1.4)
|
71
79
|
|
72
80
|
> Released on June, 28th 2019
|
73
81
|
|
@@ -81,7 +89,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
81
89
|
|
82
90
|
- travis cleanup [`[6278daa]`](https://github.com/AntiPhotonltd/slackit/commit/6278daafa0b58d54aa22c0c1d62d3c72ccf25dd8) [`[TGWolf]`](https://github.com/TGWolf)
|
83
91
|
|
84
|
-
### [v1.1.
|
92
|
+
### [v1.1.3](https://github.com/AntiPhotonltd/slackit/compare/v1.1.2...v1.1.3)
|
85
93
|
|
86
94
|
> Released on March, 13th 2019
|
87
95
|
|
@@ -89,7 +97,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
89
97
|
|
90
98
|
- typos [`[1250bbb]`](https://github.com/AntiPhotonltd/slackit/commit/1250bbb9399a102a9ef9844620347b12d80304a9) [`[TGWolf]`](https://github.com/TGWolf)
|
91
99
|
|
92
|
-
### [v1.1.
|
100
|
+
### [v1.1.2](https://github.com/AntiPhotonltd/slackit/compare/v1.1.1...v1.1.2)
|
93
101
|
|
94
102
|
> Released on February, 6th 2019
|
95
103
|
|
@@ -97,7 +105,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
97
105
|
|
98
106
|
- Add multiline message support [`[#2]`](https://github.com/AntiPhotonltd/slackit/pull/2) [`[TGWolf]`](https://github.com/TGWolf) [`[TGWolf]`](https://github.com/TGWolf)
|
99
107
|
|
100
|
-
### [v1.1.
|
108
|
+
### [v1.1.1](https://github.com/AntiPhotonltd/slackit/compare/v1.1.0...v1.1.1)
|
101
109
|
|
102
110
|
> Released on January, 31st 2019
|
103
111
|
|
@@ -105,7 +113,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
105
113
|
|
106
114
|
- Add ability to pipe message [`[#1]`](https://github.com/AntiPhotonltd/slackit/pull/1) [`[TGWolf]`](https://github.com/TGWolf) [`[TGWolf]`](https://github.com/TGWolf)
|
107
115
|
|
108
|
-
### [v1.1.
|
116
|
+
### [v1.1.0](https://github.com/AntiPhotonltd/slackit/compare/v1.0.1...v1.1.0)
|
109
117
|
|
110
118
|
> Released on January, 22nd 2019
|
111
119
|
|
@@ -117,7 +125,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
117
125
|
|
118
126
|
- typo [`[7db1903]`](https://github.com/AntiPhotonltd/slackit/commit/7db1903b8bfed04f22dd61f43b17918fcb2de5c8) [`[TGWolf]`](https://github.com/TGWolf)
|
119
127
|
|
120
|
-
### [v1.1
|
128
|
+
### [v1.0.1](https://github.com/AntiPhotonltd/slackit/compare/v1.0.0...v1.0.1)
|
121
129
|
|
122
130
|
> Released on January, 22nd 2019
|
123
131
|
|
@@ -131,7 +139,7 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
131
139
|
|
132
140
|
- Added testing section to README [`[4f53027]`](https://github.com/AntiPhotonltd/slackit/commit/4f53027cb09017419509736420067804fd06eedb) [`[TGWolf]`](https://github.com/TGWolf)
|
133
141
|
|
134
|
-
### [v1.0.
|
142
|
+
### [v1.0.0](https://github.com/AntiPhotonltd/slackit/releases/v1.0.0)
|
135
143
|
|
136
144
|
> Released on January, 22nd 2019
|
137
145
|
|
@@ -139,10 +147,6 @@ This changelog was automatically generated using [Caretaker](https://github.com/
|
|
139
147
|
|
140
148
|
- Tweak README [`[431ad5e]`](https://github.com/AntiPhotonltd/slackit/commit/431ad5e9e7b3c3633e9488bf33e07d7ed4816331) [`[TGWolf]`](https://github.com/TGWolf)
|
141
149
|
|
142
|
-
### [v1.0.0](https://github.com/AntiPhotonltd/slackit/releases/v1.0.0)
|
143
|
-
|
144
|
-
> Released on January, 21st 2019
|
145
|
-
|
146
150
|
- Make the cli actually do something useful [`[b21dd45]`](https://github.com/AntiPhotonltd/slackit/commit/b21dd45f0669abc7e9cb48befd8933dfde259e45) [`[TGWolf]`](https://github.com/TGWolf)
|
147
151
|
|
148
152
|
- Badges [`[a5832d4]`](https://github.com/AntiPhotonltd/slackit/commit/a5832d408c40effd71b1c11b704c6997a505e5e2) [`[TGWolf]`](https://github.com/TGWolf)
|
data/README.md
CHANGED
@@ -91,7 +91,7 @@ client = Slackit.new(webhook_url: "slack webhook url")
|
|
91
91
|
#### Initialize with all options
|
92
92
|
|
93
93
|
```ruby
|
94
|
-
client =
|
94
|
+
client = Slackit.new(
|
95
95
|
webhook_url: "slack webhook url",
|
96
96
|
channel: "#development",
|
97
97
|
username: "mybot",
|
@@ -105,6 +105,25 @@ client = SlackNotify::Client.new(
|
|
105
105
|
client = Slackit.new(options)
|
106
106
|
```
|
107
107
|
|
108
|
+
#### Validating the webhook url
|
109
|
+
|
110
|
+
Firstly slackit will check to ensure that the webhook url starts with `https://hooks.slack.com/services`, this is the slack standard for all invalid webhook urls.
|
111
|
+
|
112
|
+
Secondly slackit will attempt to validate the webhook url, by making a HTTP `GET` request, if the response to the request is a redirect to `https://api.slack.com` then the url is deemed to be invalid.
|
113
|
+
|
114
|
+
This checking can be bypassed by supplying the `-V` command line option to tell slackit this is a `valid` url, this is useful if you know that the URL is valid and working and removes the additional overhead of repeated testing for each message.
|
115
|
+
|
116
|
+
If you want to manually validate a url you can do this using the command line option -v
|
117
|
+
|
118
|
+
```
|
119
|
+
slackit -v -w <slack webhook url>
|
120
|
+
```
|
121
|
+
|
122
|
+
This will run the GET test and also send a test message to the `general` channel to ensure that the supplied token is also valid, if this comes back with a success you `should` be safe to use the -V option from then on.
|
123
|
+
|
124
|
+
> Normal error handling during the post of a message will always be carried out.
|
125
|
+
|
126
|
+
|
108
127
|
### Sending Messages
|
109
128
|
|
110
129
|
#### Simple messages
|
@@ -139,17 +158,25 @@ Usage: slackit
|
|
139
158
|
-w, --webhook-url string The slack incoming webhook url to use
|
140
159
|
-u, --username string The username to send as [default: slackit]
|
141
160
|
|
161
|
+
Webhook Validation:
|
162
|
+
-v, --validation-test Run a webbook validation test
|
163
|
+
-V, --validated-webhook Flag the webhook as validated (skips constant validation)
|
164
|
+
|
142
165
|
Message type options:
|
143
166
|
-a, --attachment Treat the message as an attachment
|
144
167
|
-b, --block Treat the message as a block
|
145
168
|
```
|
146
169
|
|
147
|
-
|
170
|
+
#### Pipe message
|
148
171
|
|
149
172
|
Alternatively to using the `-m` parameter, you can pipe your message instead:
|
150
173
|
|
151
174
|
$ echo 'Hello world!' | slackit -w ...
|
152
175
|
|
176
|
+
#### Return values
|
177
|
+
|
178
|
+
For all sucessful sending slackit will return a value of 0. For all errors it will return the value of 1.
|
179
|
+
|
153
180
|
## Development
|
154
181
|
|
155
182
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
data/exe/slackit
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'optparse'
|
4
4
|
require 'slackit'
|
5
|
+
require 'cmessages'
|
5
6
|
|
6
7
|
# -------------------------------------------------------------------------------- #
|
7
8
|
# Send Mssage to Slack #
|
@@ -13,20 +14,20 @@ def send_message_to_slack(options)
|
|
13
14
|
begin
|
14
15
|
s = Slackit.new(options)
|
15
16
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
17
|
+
unless options[:validation_test]
|
18
|
+
if options[:attachment]
|
19
|
+
s.send_attachment(options[:message])
|
20
|
+
elsif options[:block]
|
21
|
+
s.send_block(options[:message])
|
22
|
+
else
|
23
|
+
s.send_message(options[:message])
|
24
|
+
end
|
22
25
|
end
|
23
|
-
rescue
|
24
|
-
|
25
|
-
exit(1)
|
26
|
-
rescue RuntimeError => e
|
27
|
-
puts e
|
26
|
+
rescue Exception => e
|
27
|
+
e.to_s.error
|
28
28
|
exit(1)
|
29
29
|
end
|
30
|
+
exit(0)
|
30
31
|
end
|
31
32
|
|
32
33
|
# -------------------------------------------------------------------------------- #
|
@@ -70,6 +71,19 @@ def process_arguments
|
|
70
71
|
options[:username] = username
|
71
72
|
end
|
72
73
|
|
74
|
+
opts.separator ''
|
75
|
+
opts.separator 'Webhook Validation:'
|
76
|
+
|
77
|
+
opts.on('-v', '--validation-test', 'Run a webbook validation test') do
|
78
|
+
options[:validation_test] = true
|
79
|
+
options[:message] = 'This is a webhook validation test message'
|
80
|
+
options[:channel] = 'general'
|
81
|
+
end
|
82
|
+
|
83
|
+
opts.on('-V', '--validated-webhook', 'Flag the webhook as validated (skips constant validation)') do
|
84
|
+
options[:validated_webhook] = true
|
85
|
+
end
|
86
|
+
|
73
87
|
opts.separator ''
|
74
88
|
opts.separator 'Message type options:'
|
75
89
|
|
data/lib/slackit.rb
CHANGED
@@ -1,21 +1,52 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'slackit/version'
|
4
|
-
require '
|
5
|
-
|
4
|
+
require 'net/http'
|
5
|
+
require 'uri'
|
6
6
|
require 'json'
|
7
|
+
require 'cmessages'
|
7
8
|
|
8
9
|
#
|
9
10
|
# To follow
|
10
11
|
#
|
11
12
|
class Slackit
|
12
13
|
def initialize(options = {})
|
13
|
-
@webhook_url
|
14
|
-
@username
|
15
|
-
@channel
|
16
|
-
@icon_emoji
|
14
|
+
@webhook_url = options[:webhook_url]
|
15
|
+
@username = options[:username]
|
16
|
+
@channel = options[:channel]
|
17
|
+
@icon_emoji = options[:icon_emoji]
|
18
|
+
|
19
|
+
@validation_test = options[:validation_test]
|
20
|
+
@validated_webhook = options[:validated_webhook]
|
17
21
|
|
18
22
|
raise ArgumentError.new('Webhook URL required') if @webhook_url.nil?
|
23
|
+
|
24
|
+
if @validation_test
|
25
|
+
if valid_webhook(@webhook_url)
|
26
|
+
@channel = 'general'
|
27
|
+
send_message('This is a validation message')
|
28
|
+
"#{@webhook_url} is a valid url".success
|
29
|
+
else
|
30
|
+
"#{@webhook_url} is NOT a valid url".error
|
31
|
+
end
|
32
|
+
return
|
33
|
+
end
|
34
|
+
|
35
|
+
raise ArgumentError.new("Invalid webhook URL: #{@webhook_url} - should start with https://hooks.slack.com/services/") unless @webhook_url.start_with?('https://hooks.slack.com/services/')
|
36
|
+
|
37
|
+
return if valid_webhook(@webhook_url)
|
38
|
+
|
39
|
+
raise ArgumentError.new("Invalid webhook URL: #{@webhook_url} - please check your configuration") unless valid_webhook(@webhook_url)
|
40
|
+
end
|
41
|
+
|
42
|
+
def valid_webhook(url)
|
43
|
+
uri = URI.parse(url)
|
44
|
+
|
45
|
+
r = Net::HTTP.get_response(uri)
|
46
|
+
|
47
|
+
return false if (r.code == '301') || (r.code == '302')
|
48
|
+
|
49
|
+
return true
|
19
50
|
end
|
20
51
|
|
21
52
|
#
|
@@ -72,12 +103,21 @@ class Slackit
|
|
72
103
|
payload['channel'] ||= @channel
|
73
104
|
|
74
105
|
begin
|
75
|
-
|
106
|
+
uri = URI.parse(@webhook_url)
|
107
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
108
|
+
http.use_ssl = true
|
109
|
+
request = Net::HTTP::Post.new(uri.request_uri, headers)
|
110
|
+
request.body = payload.to_json
|
111
|
+
response = http.request(request)
|
112
|
+
|
113
|
+
return true if response.code == '200'
|
114
|
+
|
115
|
+
raise "Invalid webhook URL: #{@webhook_url} - please check your configuration" if response.code == '301' || response.code == '302'
|
76
116
|
|
77
|
-
|
117
|
+
raise "Unknown error for webhook URL: #{@webhook_url}" if response.body.empty?
|
78
118
|
|
79
|
-
raise response
|
80
|
-
rescue
|
119
|
+
raise response.body
|
120
|
+
rescue Exception => e
|
81
121
|
raise e
|
82
122
|
end
|
83
123
|
end
|
data/lib/slackit/version.rb
CHANGED
data/slackit.gemspec
CHANGED
@@ -22,11 +22,15 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.required_ruby_version = '>= 2.5'
|
23
23
|
|
24
24
|
spec.add_development_dependency 'bundler', '~> 2'
|
25
|
-
spec.add_development_dependency '
|
25
|
+
spec.add_development_dependency 'cmessages', '~> 1.0.0'
|
26
26
|
spec.add_development_dependency 'json', '~> 2.3.0'
|
27
|
+
# spec.add_development_dependency 'net-http', '~> 0.1.0'
|
27
28
|
spec.add_development_dependency 'rake', '~> 12.3.3'
|
28
29
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
30
|
+
spec.add_development_dependency 'uri', '~> 0.10.0'
|
29
31
|
|
30
|
-
spec.add_runtime_dependency '
|
32
|
+
spec.add_runtime_dependency 'cmessages', '~> 1.0.0'
|
33
|
+
# spec.add_runtime_dependency 'net-http', '~> 0.1.0'
|
31
34
|
spec.add_runtime_dependency 'json', '~> 2.3.0'
|
35
|
+
spec.add_runtime_dependency 'uri', '~> 0.10.0'
|
32
36
|
end
|
data/spec/slackit_spec.rb
CHANGED
data/testing/slackit
CHANGED
@@ -4,6 +4,7 @@ require 'bundler/setup'
|
|
4
4
|
|
5
5
|
require 'optparse'
|
6
6
|
require 'slackit'
|
7
|
+
require 'cmessages'
|
7
8
|
|
8
9
|
# -------------------------------------------------------------------------------- #
|
9
10
|
# Send Mssage to Slack #
|
@@ -15,20 +16,20 @@ def send_message_to_slack(options)
|
|
15
16
|
begin
|
16
17
|
s = Slackit.new(options)
|
17
18
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
19
|
+
unless options[:validation_test]
|
20
|
+
if options[:attachment]
|
21
|
+
s.send_attachment(options[:message])
|
22
|
+
elsif options[:block]
|
23
|
+
s.send_block(options[:message])
|
24
|
+
else
|
25
|
+
s.send_message(options[:message])
|
26
|
+
end
|
24
27
|
end
|
25
|
-
rescue
|
26
|
-
|
27
|
-
exit(1)
|
28
|
-
rescue RuntimeError => e
|
29
|
-
puts e
|
28
|
+
rescue Exception => e
|
29
|
+
e.to_s.error
|
30
30
|
exit(1)
|
31
31
|
end
|
32
|
+
exit(0)
|
32
33
|
end
|
33
34
|
|
34
35
|
# -------------------------------------------------------------------------------- #
|
@@ -72,6 +73,19 @@ def process_arguments
|
|
72
73
|
options[:username] = username
|
73
74
|
end
|
74
75
|
|
76
|
+
opts.separator ''
|
77
|
+
opts.separator 'Webhook Validation:'
|
78
|
+
|
79
|
+
opts.on('-v', '--validation-test', 'Run a webbook validation test') do
|
80
|
+
options[:validation_test] = true
|
81
|
+
options[:message] = 'This is a webhook validation test message'
|
82
|
+
options[:channel] = 'general'
|
83
|
+
end
|
84
|
+
|
85
|
+
opts.on('-V', '--validated-webhook', 'Flag the webhook as validated (skips constant validation)') do
|
86
|
+
options[:validated_webhook] = true
|
87
|
+
end
|
88
|
+
|
75
89
|
opts.separator ''
|
76
90
|
opts.separator 'Message type options:'
|
77
91
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: slackit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Gurney aka Wolf
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-08-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -25,19 +25,19 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: cmessages
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.
|
33
|
+
version: 1.0.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: 1.0.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: json
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -81,19 +81,33 @@ dependencies:
|
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '3.0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: uri
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: 0.10.0
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.10.0
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: cmessages
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 1.0.0
|
90
104
|
type: :runtime
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
108
|
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
110
|
+
version: 1.0.0
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: json
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -108,6 +122,20 @@ dependencies:
|
|
108
122
|
- - "~>"
|
109
123
|
- !ruby/object:Gem::Version
|
110
124
|
version: 2.3.0
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: uri
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 0.10.0
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 0.10.0
|
111
139
|
description: A simple gem for posting raw messages to a slack incoming webhook.
|
112
140
|
email:
|
113
141
|
- wolf@tgwolf.com
|