AWS credentials through metadata service or boto auto-detection #105
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Metadata service (STS): This is like PR Allow using AWS metadata service when available. #104 from @michaelconnor00 with the addition of catching
botocore.exceptions.NoCredentialsError
, which gets raised when credentials can't be obtained this way.Boto auto-detection: After having another overall look at
get_s3_conn()
, I noticed that the comment ofdidn't actually hold, because the spacer code would raise a
ConfigError
if spacer-config credentials were None. I decided to just remove that check that would lead to the ConfigError. The check additionally seemed a bit misleading anyway, because it's no guarantee of having valid credentials; theboto3.resource()
call doesn't actually use the credentials right away. You'll only know if they're valid credentials when the resource (or 'connection', as we currently call it) is actually used to access an S3 bucket or object for the first time.Will take another look at this later to make sure I didn't miss something else.