aws-get-credentials
Create an AWS credentials instance from local credentials
About
Fetch a credentials instance from your local machine using a very simple fetcher method.
Avoid hardcoding and commiting secure information by using AWS' credentials file for configuration. Some AWS client libraries automatically read this file, but some do not. aws-get-credentials provides a quick and easy method to retrieve a credential file's config.
Usage
The aws-get-credentials
module exports two methods:
getAWSCredentials
- Fetch an AWS Credentials
instance from local configurationgetAWSProfiles
- Get an array of profile names available
Check out the API documentation for more information.
getAWSCredentials
The method getAWSCredentials
takes two parameters:
getAWSCredentials(optionalProfileOverride, optionalPathOverride)
optionalProfileOverride
is an optional override for the profile to use (defaults to an environment variable AWS_DEFAULT_PROFILE
first, then "default" lastly). optionalPathOverride
is an optional override for the path to the credentials file (defaults to an environment variable AWS_CREDENTIALS_PATH
first, and then ~/.aws/credentials
lastly).
Example
Firstly, import the function:
const { getAWSCredentials } = require("aws-get-credentials");
Then use its output (promise):
const s3 = require("s3");
getAWSCredentials("production")
.then(function(credentials) {
const s3Client = s3.createClient({
s3Options: {
credentials
}
});
const syncOptions = {};
const uploader = s3Client.uploadDir(syncOptions);
return new Promise(function(resolve, reject) {
uploader.on("error", reject);
uploader.on("end", resolve);
});
});
getAWSProfiles
This method asynchronously fetches a list of profile names in the credentials file:
const { getAWSProfiles } = require("aws-get-credentials");
getAWSProfiles().then(profiles => {
});