Skip to content

Instantly share code, notes, and snippets.

@hawaku
Created March 4, 2015 06:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hawaku/8334391ce4a5a7e827c8 to your computer and use it in GitHub Desktop.
Save hawaku/8334391ce4a5a7e827c8 to your computer and use it in GitHub Desktop.
#!/bin/bash
SrcProfile=hoge
SrcRoleName=hoge_role
DestProfile=moge
DestRoleName=mode_role
getrole=`aws --profile $SrcProfile iam get-role --role-name $SrcRoleName`
assume=`echo $getrole|jq '.Role.AssumeRolePolicyDocument'`
aws --profile $DestProfile iam create-role --role-name $DestRoleName --assume-role-policy-document "$assume"
aws --profile $DestProfile iam create-instance-profile --instance-profile-name $DestRoleName
aws --profile $DestProfile iam add-role-to-instance-profile --instance-profile-name $DestRoleName --role-name $DestRoleName
policies=`aws --profile $SrcProfile iam list-role-policies --role-name $SrcRoleName|jq -r '.PolicyNames[]'`
for srcpolicy in ${policies[@]}
do
getpolicy=`aws --profile $SrcProfile iam get-role-policy --role-name $SrcRoleName --policy-name $srcpolicy|jq '.PolicyDocument'`
aws --profile $DestProfile iam put-role-policy --role-name $DestRoleName --policy-name $srcpolicy --policy-document "$getpolicy"
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment