wolf_core 0.1.16 → 0.1.17

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: c7a65bdc79f3a3c023d9488e10ebdb6ca8207a53d44af59217b56449d930e026
4
- data.tar.gz: 580acd4c9c3f77ed552ce8f3a6656b24ab37f296de40bb09ff719c02e2f41927
3
+ metadata.gz: bc4fd458f25e3c811fe10cc530624099b49c6fa48c98c83ce34168e811e4b2f3
4
+ data.tar.gz: 7d27d6bf1f70548aff6e8f4f667562fcf5538641a6a7d279c89566a7739b1a40
5
5
  SHA512:
6
- metadata.gz: 441712c8ede3e1900eb7868da5f36742cf4453ad44c6a7a2e081e0af5fd91ac2d2b4206cc3091798c01e7738cf956608b01c8df7df0b4f43f893c7196c7eb4f4
7
- data.tar.gz: 795fb269305da0d0bea89313c815c3adf37e7c44a47be628f4ce2a27005d801796e8b3a3eb7c0e6a4f454080ed42a5594982ea8187addc733f6d788e6b1af43a
6
+ metadata.gz: 5fa3c4785a823a2c65fd3437cc2abc973405cbd06e26ce91355da3afb8478a78bd1e2d069c97a8059509aef0db94bf0b49f1372f7e9e35e864d863c04e8ad2eb
7
+ data.tar.gz: f0de3112e7546b400bd985eaa3e2ef6b1bbdd954e84fb25a6e61b2719fa727ad305bb15ede314023785def7b186d54c09e2a1bce45abd6563db983241cf59625
@@ -0,0 +1,29 @@
1
+ module WolfCore
2
+ module LambdaFunctionDataSource
3
+ module_function
4
+
5
+ def init
6
+ client_config = {
7
+ access_key_id: ENV.fetch('AWS_KEY_ID', nil),
8
+ secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY', nil),
9
+ region: ENV.fetch('AWS_REGION', nil)
10
+ }.compact
11
+ return if client_config.empty?
12
+ @@client = Aws::Lambda::Client.new(client_config)
13
+ end
14
+
15
+ def client
16
+ @@client
17
+ end
18
+
19
+ def invoke(function_name:, payload:)
20
+ parsed_payload = JSON.generate(payload)
21
+ @@client.invoke({
22
+ function_name: function_name,
23
+ invocation_type: 'Event',
24
+ log_type: 'Tail',
25
+ payload: parsed_payload
26
+ })
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,7 @@
1
+ module WolfCore
2
+ module LambdaFunctionOperations
3
+ def invoke_lambda(function_name:, payload:)
4
+ WolfCore::LambdaFunctionDataSource.invoke(function_name: function_name, payload: payload)
5
+ end
6
+ end
7
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module WolfCore
4
- VERSION = "0.1.16"
4
+ VERSION = "0.1.17"
5
5
  end
data/lib/wolf_core.rb CHANGED
@@ -5,9 +5,11 @@ require 'ostruct'
5
5
  require 'httparty'
6
6
  require 'active_support'
7
7
  require 'active_support/core_ext'
8
+ require 'aws-sdk-lambda'
8
9
 
9
10
  module WolfCore; end
10
11
 
11
12
  require 'wolf_core/utils/file_utils'
12
13
 
13
14
  WolfCore::FileUtils.require_relative_folder(__dir__, 'wolf_core')
15
+ WolfCore::LambdaFunctionDataSource.init
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wolf_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.16
4
+ version: 0.1.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Javier Roncallo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-07-15 00:00:00.000000000 Z
11
+ date: 2024-07-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: aws-sdk-lambda
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  description: Repository to store shared code among Ruby projects.
42
56
  email:
43
57
  - jroncallo96@gmail.com
@@ -49,11 +63,13 @@ files:
49
63
  - lib/wolf_core/application/application_service.rb
50
64
  - lib/wolf_core/application/barton/mappings.rb
51
65
  - lib/wolf_core/application/exception_operations.rb
52
- - lib/wolf_core/application/fkm_operations.rb
53
- - lib/wolf_core/application/http_operations.rb
54
66
  - lib/wolf_core/application/salesforce_oauth_service.rb
55
67
  - lib/wolf_core/application/service_exception.rb
68
+ - lib/wolf_core/infrastructure/fkm_operations.rb
56
69
  - lib/wolf_core/infrastructure/http_data_source.rb
70
+ - lib/wolf_core/infrastructure/http_operations.rb
71
+ - lib/wolf_core/infrastructure/lambda_function_data_source.rb
72
+ - lib/wolf_core/infrastructure/lambda_function_operations.rb
57
73
  - lib/wolf_core/utils/file_utils.rb
58
74
  - lib/wolf_core/utils/result.rb
59
75
  - lib/wolf_core/version.rb