fuik 0.5.0 → 0.6.0
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/lib/fuik/version.rb +1 -1
- data/lib/generators/fuik/provider/provider_generator.rb +14 -2
- data/lib/generators/fuik/provider/templates/github/base.rb.tt +1 -1
- data/lib/generators/fuik/provider/templates/mailpace/base.rb.tt +1 -1
- data/lib/generators/fuik/provider/templates/stripe/base.rb.tt +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 47ab026ae825dd40d64745dad6a98513bd665f2def873e2ea855b2f2e9a72902
|
|
4
|
+
data.tar.gz: 4a5e61f5c5c8458563d2d1e72fabc69fc112d2281c5503d189e48461d29f28fa
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4cc793c63cb0fbe31691c107010db1206b301484bf269a025fc7f5ddd1f44aa9197bdfd489d1660ff505602d9701cfa10b43ab589802c8496cdc2aeccf31865e
|
|
7
|
+
data.tar.gz: 388c37eb70b47c15a565b321b285f88b5aaab80c19cee13a3ecbb1ea658f07b0fdb9260a70bf3ba3aae98e2523317e4271eaea7d0b44f98d8f01679ae7becce8
|
data/lib/fuik/version.rb
CHANGED
|
@@ -9,7 +9,11 @@ module Fuik
|
|
|
9
9
|
argument :event_names, type: :array, default: []
|
|
10
10
|
|
|
11
11
|
def create_base_class
|
|
12
|
-
|
|
12
|
+
if packaged_base_exists?
|
|
13
|
+
template packaged_base_template_path, "app/webhooks/#{file_name}/base.rb"
|
|
14
|
+
else
|
|
15
|
+
template "base.rb.tt", "app/webhooks/#{file_name}/base.rb"
|
|
16
|
+
end
|
|
13
17
|
end
|
|
14
18
|
|
|
15
19
|
def create_event_classes
|
|
@@ -26,6 +30,14 @@ module Fuik
|
|
|
26
30
|
|
|
27
31
|
private
|
|
28
32
|
|
|
33
|
+
def packaged_base_exists?
|
|
34
|
+
File.exist?(packaged_base_template_path)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def packaged_base_template_path
|
|
38
|
+
File.join(self.class.source_root, file_name, "base.rb.tt")
|
|
39
|
+
end
|
|
40
|
+
|
|
29
41
|
def packaged_event_exists? = File.exist?(packaged_event_template_path)
|
|
30
42
|
|
|
31
43
|
def copy_packaged_event
|
|
@@ -38,7 +50,7 @@ module Fuik
|
|
|
38
50
|
|
|
39
51
|
def packaged_event_template_path = File.join(self.class.source_root, "providers", file_name, "#{event_file_name}.rb.tt")
|
|
40
52
|
|
|
41
|
-
def event_file_path = Rails.join("app", "webhooks", file_name, "#{event_file_name}.rb")
|
|
53
|
+
def event_file_path = Rails.root.join("app", "webhooks", file_name, "#{event_file_name}.rb")
|
|
42
54
|
|
|
43
55
|
def event_file_name = @event_name.underscore
|
|
44
56
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module <%= provider_module_name %>
|
|
2
2
|
class Base < Fuik::Event
|
|
3
3
|
def self.verify!(request)
|
|
4
|
-
secret = Rails.application.credentials.dig(:
|
|
4
|
+
secret = Rails.application.credentials.dig(:github, :secret)
|
|
5
5
|
signature = request.headers["X-Hub-Signature-256"]
|
|
6
6
|
expected_signature = "sha256=" + OpenSSL::HMAC.hexdigest("SHA256", secret, request.raw_post)
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module <%= provider_module_name %>
|
|
2
2
|
class Base < Fuik::Event
|
|
3
3
|
def self.verify!(request)
|
|
4
|
-
public_key_base64 = Rails.application.credentials.dig(:
|
|
4
|
+
public_key_base64 = Rails.application.credentials.dig(:mailpace, :public_key)
|
|
5
5
|
signature_base64 = request.headers["X-MailPace-Signature"]
|
|
6
6
|
|
|
7
7
|
verify_key = Ed25519::VerifyKey.new(Base64.strict_decode64(public_key_base64))
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
module <%= provider_module_name %>
|
|
2
2
|
class Base < Fuik::Event
|
|
3
3
|
def self.verify!(request)
|
|
4
|
-
secret = Rails.application.credentials.dig(:
|
|
4
|
+
secret = Rails.application.credentials.dig(:stripe, :signing_secret)
|
|
5
5
|
signature = request.headers["Stripe-Signature"]
|
|
6
6
|
|
|
7
7
|
Stripe::Webhook.construct_event(
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fuik
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.6.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Rails Designer
|
|
@@ -23,7 +23,9 @@ dependencies:
|
|
|
23
23
|
- - ">="
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
25
|
version: 7.0.0
|
|
26
|
-
description:
|
|
26
|
+
description: Fuik (Dutch for fish trap) is a Rails engine that catches and stores
|
|
27
|
+
webhooks from any provider. View all events in the admin interface, then create
|
|
28
|
+
event classes to add your business logic.
|
|
27
29
|
email:
|
|
28
30
|
- devs@railsdesigner.com
|
|
29
31
|
executables: []
|
|
@@ -89,5 +91,5 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
89
91
|
requirements: []
|
|
90
92
|
rubygems_version: 4.0.0
|
|
91
93
|
specification_version: 4
|
|
92
|
-
summary:
|
|
94
|
+
summary: A fish trap for webhooks
|
|
93
95
|
test_files: []
|