slack-notification 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 83e0b0242c87913f71ddfc6ce4ddba328055844e497aa8d724128a413d76c31a
4
- data.tar.gz: 7e1986ba946e6020d877534825f76077cca78242a3c4e2faaea72395a20329e4
3
+ metadata.gz: d48baf58d70ad1a83cd4a8f82fd832f4ffe29319fb58dd22e654bb701e71391f
4
+ data.tar.gz: 8be9a3b3a81a092622066c295d5b7011713420e240350eb06ed18e9dd52cf9a2
5
5
  SHA512:
6
- metadata.gz: b2416cea694677140932daa0c019334c8e6602eace72ee01930ef0d7d595161deb3b2b1938932f6d95b7d7e4dd333fd8f3cae426bf1a6d73a9d3f997d779098e
7
- data.tar.gz: dc0d2ab30971b435e7b971b24745b113ec7cef31518dfc9e481dbfe0b096a16dca1f6e5451b06d81a72f3be7cb99d8791b65de46569c189c5c477350d4786f3d
6
+ metadata.gz: e3b2950e3653af693a91176c5424c41a46602765c00dfc15db85212493bbda625e335bff453d906453fe1601d38dc2240552eeb47d799078b959133355c7e212
7
+ data.tar.gz: 37fdaefd47f2985f90d2d06e2b5054cd720724f3e11a366773df9fb0c58db58aeed65e4ac181fd293161bd9efcf75ae29d832552acf83ccd8aee0f213045419b
data/README.md CHANGED
@@ -59,8 +59,12 @@ String: The fields value becomes the message title, and no fields are submitted.
59
59
  Hash: Format: `{ title_1: :value_1, [...] }`
60
60
  Array: Array of hashes, each of format: `{ title: 'Field name', value: field_value, short: true }`
61
61
 
62
+ ### Configuration
63
+
62
64
  Channels can be made available by setting ENV variables beginning with `SLACK_URL_`.
63
65
 
66
+ If you are using Rails credentials, the `:slack` will take priority over ENV variables, ir present.
67
+
64
68
  ## License
65
69
 
66
70
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
@@ -78,11 +78,23 @@ private
78
78
  end
79
79
 
80
80
  def slack_urls
81
+ return credentials_urls if credentials_urls?
82
+
81
83
  ENV.select { |k, _| k.match?(/SLACK_URL_/) }.map do |key, url|
82
84
  { key.gsub('SLACK_URL_', '').downcase => url }
83
85
  end.reduce({}, :merge)
84
86
  end
85
87
 
88
+ def credentials_urls?
89
+ defined?(Rails) && Rails.application.credentials.respond_to?(:slack)
90
+ end
91
+
92
+ def credentials_urls
93
+ Rails.application.credentials.slack.mapeach_with_object({}) do |(k, v), h|
94
+ h[k.to_s.gsub('_', '-')] = v
95
+ end
96
+ end
97
+
86
98
  def validated_type(type = nil)
87
99
  valid_types = %i[success info warning failure]
88
100
  return type if type.blank? || type.in?(valid_types)
@@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = 'slack-notification'
8
- spec.version = '0.1.0'
8
+ spec.version = '0.1.1'
9
9
  spec.authors = ['Julian Fiander']
10
10
  spec.email = ['julian@fiander.one']
11
11
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: slack-notification
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julian Fiander