2015-11-18 17:16:04 +02:00

43 lines
966 B
JavaScript

'use strict';
/**
* JAWS Services: AWS: IAM
* - Prefix custom methods with "s"
*/
let BbPromise = require('bluebird'),
path = require('path'),
os = require('os'),
AWS = require('aws-sdk'),
JawsError = require('../../jaws-error'),
JawsUtils = require('../../utils'),
async = require('async'),
fs = require('fs');
// Promisify fs module. This adds "Async" to the end of every method
BbPromise.promisifyAll(fs);
module.exports = function(config) {
// Promisify and configure instance
const IAM = BbPromise.promisifyAll(new AWS.IAM(config));
/**
* Get IAM Role
*/
IAM.sGetRole = function(roleName) {
let params = {
RoleName: roleName,
};
return IAM.getRoleAsync(params)
.error(function(error) {
return BbPromise.reject(new JawsError(error.message, JawsError.errorCodes.UNKNOWN);
});
};
// Return configured, customized instance
return IAM;
};