cerberus_client 1.5.0.rc.3 → 1.5.0.rc.4

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
  SHA1:
3
- metadata.gz: 42c674693d53762da3e59b70817e1ee860464d2d
4
- data.tar.gz: c3eabb9413e9c5f8aef01d7e830eef06b00fa035
3
+ metadata.gz: 3e01636863ecb3ed0d02bf1aa3fe9df33dc0d766
4
+ data.tar.gz: 5e3416ffe640a9d843b02a5d41acda791361fcc8
5
5
  SHA512:
6
- metadata.gz: 69f2092ca99b07c4b5f171f7cb462f647e75a82b59490241e6d016d1569d733a449d612fc2eb8c789a0b313a92ce9ef5b7f9428b7ecc2a1ccf967fb6af88869a
7
- data.tar.gz: b3b8fbede4e791182cb5effd4a5f9668ee4e6df3141559bcef595132ae75f9e5931eafbc30fbbc5e155190801bb0e1acfcd1af8e68b7304a396efeaba118cfe6
6
+ metadata.gz: fc6df32e7bdddb2c95d552103b9a3fc9fe843d081e511e73e32241ea06b6d868b0b8cf620d8a61205b853f095b0c2979e58d00cf332f727eb04791a0d07e601b
7
+ data.tar.gz: 9168a709b1afe9ce6ebecb54d19820c9377978f5ca8d8020676d0940da38116a29eeaf607d812c5fcbd55d924f46836d02001fb30b956c9e3888a7fcf5c9fb38
data/README.md CHANGED
@@ -94,6 +94,18 @@ Then open Interactive Ruby:
94
94
  you have added new files. Commit the new files and re-build your gem to ensure the new files
95
95
  get included in your gem release candidate .
96
96
 
97
+ ### Run Tests Locally
98
+
99
+ ```bash
100
+ % gem install rspec
101
+ ```
102
+
103
+ Then in the top-level project directory, run
104
+
105
+ ```bash
106
+ % rspec spec
107
+ ```
108
+
97
109
  ### Running in AWS
98
110
 
99
111
  If the environment variables used in local development are not found, the client will try to use the AWS metadata
@@ -46,8 +46,7 @@ module Cerberus
46
46
  def initialize(vaultBaseUrl)
47
47
  @vaultBaseUrl = vaultBaseUrl
48
48
  @clientToken = nil
49
- @instanceMdSvcBaseUrl = INSTANCE_METADATA_SVC_BASE_URL
50
- @role = getRoleFromInstanceMetadata
49
+ @role = get_role_info
51
50
 
52
51
  LOGGER.debug("AwsPrincipalCredentialsProvider initialized with vault base url #{@vaultBaseUrl}")
53
52
  end
@@ -76,12 +75,25 @@ module Cerberus
76
75
 
77
76
  end
78
77
 
78
+ private
79
+
80
+ ##
81
+ # Uses provided data to determine how to construct the AwsRoleInfo use by this provider
82
+ ##
83
+ def get_role_info
84
+ begin
85
+ return get_role_from_instance_metadata
86
+ rescue Cerberus::Exception::HttpError
87
+ return nil
88
+ end
89
+ end
90
+
79
91
  ##
80
92
  # Use the instance metadata to extract the role information
81
93
  # This function should only be called from an EC2 instance otherwise the http
82
94
  # call will fail.
83
95
  ##
84
- def getRoleFromInstanceMetadata
96
+ def get_role_from_instance_metadata
85
97
  role_arn = getIAMRoleARN
86
98
  region = getRegionFromAZ(getAvailabilityZone)
87
99
  account_id = getAccountIdFromRoleARN(role_arn)
@@ -168,7 +180,7 @@ module Cerberus
168
180
  # else throw an IOError for non-2xx responses and RuntimeError for any exceptions down the stack
169
181
  ##
170
182
  def doHttpToMDService(relUri)
171
- url = URI(@instanceMdSvcBaseUrl + relUri)
183
+ url = URI(INSTANCE_METADATA_SVC_BASE_URL + relUri)
172
184
  CerberusClient::Http.new.doHttp(url, 'GET', false)
173
185
  end
174
186
 
@@ -1,3 +1,3 @@
1
1
  module CerberusClient
2
- VERSION = "1.5.0.rc.3"
2
+ VERSION = "1.5.0.rc.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cerberus_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0.rc.3
4
+ version: 1.5.0.rc.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joe Teibel
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-08-17 00:00:00.000000000 Z
11
+ date: 2017-08-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk