MovableInkAWS 0.3.6 → 0.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ac88eb29fbafb05b27ad196f6308d5184b38d9220f6213d38965915b22505c76
4
- data.tar.gz: 36df30eeaeb57db6f742d95819266d902b9ea118f14ca56c685ffba62a4172b5
3
+ metadata.gz: 4a003b444c6b5e150a6420624b2a52de2484738d4cce518081435bce1051dabe
4
+ data.tar.gz: 5fd9b8e1f6954aa4b3031c7a7fe808bfa158c698e0f16f5c23f6a00e64f9cfb0
5
5
  SHA512:
6
- metadata.gz: 6d1df5299ea1db3985f1747779ac4b626605880062286c8b97872485cd8d1c848b18c06d2f09ec223c670c6c6ec674a60c93951c6299f0495ed5b919ec849cf4
7
- data.tar.gz: 509c3fe4f8257378bf70a816b3c9631141aa8d7b36ece74ee5dcafbb5006f1b76b7b2b9465331017ab1836f19a0f2c0231686bc37216bb99940a538b75953ab5
6
+ metadata.gz: baa941aa3b93e8fefe7fd7be692551e85b8de4f58c3d3b5e720305066ed34f7d867481f5e82ed42b60b5a611f78fae5c80496825683c528de641c9594f3c3c91
7
+ data.tar.gz: 43e9683d74acebb93296b42f8bc83c208d805a39ba4e4b87182ad0c25d669687589380d81219bd90a9a0620abbfb77979e4fa7def095768fc2c5cca7d8a14ac4
@@ -9,7 +9,9 @@ Gem::Specification.new do |s|
9
9
  s.authors = ['Matt Chesler']
10
10
  s.email = 'mchesler@movableink.com'
11
11
 
12
- s.add_runtime_dependency 'aws-sdk', '2.11.240'
12
+ s.add_runtime_dependency 'aws-sdk', '2.11.240'
13
+ s.add_runtime_dependency 'aws-sigv4', '~> 1.1'
14
+ s.add_runtime_dependency 'httparty', '0.16.3'
13
15
 
14
16
  all_files = `git ls-files`.split("\n")
15
17
  test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -0,0 +1,30 @@
1
+ require 'aws-sdk'
2
+ require 'aws-sigv4'
3
+ require 'httparty'
4
+
5
+ module MovableInk
6
+ class AWS
7
+ module ApiGateway
8
+ def post_signed_gateway_request(gateway_url:, region:, body:)
9
+ credentials = Aws::CredentialProviderChain.new.resolve.credentials
10
+
11
+ signer = Aws::Sigv4::Signer.new({
12
+ service: 'execute-api',
13
+ region: region,
14
+ credentials: credentials
15
+ })
16
+
17
+ signature = signer.sign_request({
18
+ http_method: 'POST',
19
+ url: gateway_url,
20
+ body: body,
21
+ })
22
+
23
+ HTTParty.post(gateway_url, {
24
+ headers: signature.headers,
25
+ body: body,
26
+ })
27
+ end
28
+ end
29
+ end
30
+ end
@@ -9,6 +9,7 @@ require_relative 'aws/ssm'
9
9
  require_relative 'aws/athena'
10
10
  require_relative 'aws/s3'
11
11
  require_relative 'aws/elasticache'
12
+ require_relative 'aws/api_gateway'
12
13
 
13
14
 
14
15
  module MovableInk
@@ -21,6 +22,7 @@ module MovableInk
21
22
  include Athena
22
23
  include S3
23
24
  include ElastiCache
25
+ include ApiGateway
24
26
 
25
27
  class << self
26
28
  def regions
@@ -1,5 +1,5 @@
1
1
  module MovableInk
2
2
  class AWS
3
- VERSION = '0.3.6'
3
+ VERSION = '0.4.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: MovableInkAWS
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Chesler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-04 00:00:00.000000000 Z
11
+ date: 2019-07-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -24,6 +24,34 @@ dependencies:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
26
  version: 2.11.240
27
+ - !ruby/object:Gem::Dependency
28
+ name: aws-sigv4
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.1'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.1'
41
+ - !ruby/object:Gem::Dependency
42
+ name: httparty
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 0.16.3
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 0.16.3
27
55
  description: AWS Utility methods for MovableInk
28
56
  email: mchesler@movableink.com
29
57
  executables: []
@@ -36,6 +64,7 @@ files:
36
64
  - MovableInkAWS.gemspec
37
65
  - README.md
38
66
  - lib/movable_ink/aws.rb
67
+ - lib/movable_ink/aws/api_gateway.rb
39
68
  - lib/movable_ink/aws/athena.rb
40
69
  - lib/movable_ink/aws/autoscaling.rb
41
70
  - lib/movable_ink/aws/ec2.rb