aswrapコマンドとは
fujiwaraさんという方が作成されたコマンドです。
aswrapコマンドは、AWS_PROFILE変数に設定されているprofile情報(※1)を元に、環境変数 AWS_ACCESS_KEY_ID、 AWS_SECRET_ACCESS_KEY、 AWS_SESSION_TOKEN を取得してすぐにexportできるようなかたちで出力を行うコマンドです。
Terraform などのAWS CLIではなくAWS SDK を利用したアプリを実行してAWSにアクセスする際に使用します。
※1プロファイル情報は、~/.aws/(config|credentials)に定義されている[default]の「default」や[profile myprofile]の「myprofile」などが該当。
実行方法
コマンドは下記のように実行します。
変数AWS_PROFILEに接続先環境のprofile名を設定し、aswrapを実行します。
$ $(AWS_PROFILE=myprofile aswrap)
ちなみに$(コマンドA)はコマンドAの実行結果をコマンドとして実行するというものです。
なぜこのようにするかというと、aswrapコマンドの出力結果を確認すると分かり易いかと思います。
$ RESULT=$(AWS_PROFILE=myprofile aswrap)
$
$ echo $RESULT
$ export AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXX
$ export AWS_SECRET_ACCESS_KEY=YYYYYYYYYYYYYYYYYYYYYYYY
$ export AWS_SESSION_TOKEN=ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ==
つまり、$(コマンドA)を利用することで、AWS_ACCESS_KEY_IDなどの出力された変数をそのままexportしている訳です。
こうすることで、terraformコマンドなどがすぐに利用できるようになります。