wolf_core 0.1.16 → 0.1.17

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 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