Skip to content

Commit

Permalink
Merge pull request #163 from Cox-Automotive/develop
Browse files Browse the repository at this point in the history
Develop
  • Loading branch information
amagana3 committed Sep 23, 2020
2 parents c9c8a6c + 77a802e commit add8785
Show file tree
Hide file tree
Showing 5 changed files with 652 additions and 23 deletions.
18 changes: 10 additions & 8 deletions bin/alks-iam-createrole
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,21 @@ program
.option('-n, --rolename [rolename]', 'the name of the role, ' + roleNameDesc)
.option('-t, --roletype [roletype]', 'the role type, to see available roles: alks iam roletypes')
.option('-d, --defaultPolicies', 'include default policies, default: false', false)
.option('-e, --enableAlksAccess', 'enable alks access (MI), default: false', false)
.option('-a, --account [alksAccount]', 'alks account to use')
.option('-r, --role [alksRole]', 'alks role to use')
.option('-F, --favorites', 'filters favorite accounts')
.option('-v, --verbose', 'be verbose')
.parse(process.argv);

var ROLE_NAME_REGEX = /^[a-zA-Z0-9!@+=._-]+$/g,
roleName = program.rolename,
roleType = program.roletype,
incDefPolicies = program.defaultPolicies,
alksAccount = program.account,
alksRole = program.role,
filterFaves = program.favorites || false;
roleName = program.rolename,
roleType = program.roletype,
incDefPolicies = program.defaultPolicies,
enableAlksAccess = program.enableAlksAccess,
alksAccount = program.account,
alksRole = program.role,
filterFaves = program.favorites || false;

utils.log(program, logger, 'validating role name: ' + roleName);
if(_.isEmpty(roleName) || !ROLE_NAME_REGEX.test(roleName)){
Expand All @@ -59,7 +61,7 @@ Iam.getIAMKey(program, logger, alksAccount, alksRole, false, filterFaves, functi
var data = _.extend({}, developer, key);
utils.log(program, logger, 'calling api to create role: ' + roleName);

alks.createIamRole(data, auth, roleName, roleType, incDefPolicies, { debug: program.verbose, ua: utils.getUA() }, function(err, data){
alks.createIamRole(data, auth, roleName, roleType, incDefPolicies, enableAlksAccess, { debug: program.verbose, ua: utils.getUA() }, function(err, data){
if(err){
return utils.errorAndExit(err);
}
Expand All @@ -72,4 +74,4 @@ Iam.getIAMKey(program, logger, alksAccount, alksRole, false, filterFaves, functi
utils.checkForUpdate();
Developer.trackActivity(logger);
});
});
});
20 changes: 11 additions & 9 deletions bin/alks-iam-createtrustrole
Original file line number Diff line number Diff line change
Expand Up @@ -22,20 +22,22 @@ program
.option('-n, --rolename [rolename]', 'the name of the role, ' + roleNameDesc)
.option('-t, --roletype [roletype]', 'the role type: Cross Account or Inner Account')
.option('-T, --trustarn [trustarn]', 'trust arn, ' + trustArnDesc)
.option('-e, --enableAlksAccess', 'enable alks access (MI), default: false', false)
.option('-a, --account [alksAccount]', 'alks account to use')
.option('-r, --role [alksRole]', 'alks role to use')
.option('-F, --favorites', 'filters favorite accounts')
.option('-v, --verbose', 'be verbose')
.parse(process.argv);

var ROLE_NAME_REGEX = /^[a-zA-Z0-9!@+=._-]+$/g,
TRUST_ARN_REGEX = /arn:(aws|aws-us-gov):iam::\d{12}:role\/?[a-zA-Z_0-9+=,.@-_/]+/g,
roleName = program.rolename,
roleType = program.roletype,
trustArn = program.trustarn,
alksAccount = program.account,
alksRole = program.role,
filterFaves = program.favorites || false;
var ROLE_NAME_REGEX = /^[a-zA-Z0-9!@+=._-]+$/g,
TRUST_ARN_REGEX = /arn:(aws|aws-us-gov):iam::\d{12}:role\/?[a-zA-Z_0-9+=,.@-_/]+/g,
roleName = program.rolename,
roleType = program.roletype,
trustArn = program.trustarn,
enableAlksAccess = program.enableAlksAccess,
alksAccount = program.account,
alksRole = program.role,
filterFaves = program.favorites || false;

utils.log(program, logger, 'validating role name: ' + roleName);
if(_.isEmpty(roleName) || !ROLE_NAME_REGEX.test(roleName)){
Expand Down Expand Up @@ -66,7 +68,7 @@ Iam.getIAMKey(program, logger, alksAccount, alksRole, false, filterFaves, functi
var data = _.extend({}, developer, key);
utils.log(program, logger, 'calling api to create trust role: ' + roleName);
delete data.userid;
alks.createIamTrustRole(data, auth, roleName, roleType, trustArn, { debug: program.verbose, ua: utils.getUA() }, function(err, data){
alks.createIamTrustRole(data, auth, roleName, roleType, trustArn, enableAlksAccess, { debug: program.verbose, ua: utils.getUA() }, function(err, data){
if(err){
return utils.errorAndExit(err);
}
Expand Down
1 change: 1 addition & 0 deletions changelog.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
Thanks for upgrading to the latest version of the ALKS CLI!

→ Bumps alks-node version
→ Adds flag for enabling MI for role and trust role

→ Have feedback? https://github.com/Cox-Automotive/ALKS-CLI/issues

Expand Down
Loading

0 comments on commit add8785

Please sign in to comment.