今回解決できたこと
AWS CLIなどで利用するプロファイルを(少なくとも僕の中では)リーズナブルな方法で切り替えることが出来るようになりました。
困っていたこと
管理すべきAWS credentialがある程度のボリュームになり、CLIツールやterraform/kumogataなどの関連ツールを使う際にもなにかと手間がかかるようになってきています。
どう解決したいか
せっかく ~/.aws/credentials
に情報があるのでそのまま活用したい。
但し、コピペなどの原始的な手段は回避したい。
そもそもどういうprofileがあるか覚えていないので一覧が出せる仕組みがあることが望ましい。
なにが解決出来るか
以下のような利用において、profileの切り替えが用意になることを期待します。
– AWS cli
– Codenize.tools
– TerraformなどのHashiCorpツール
解決への道
世の中には同じことに悩んでいる人がいるはず
いらっしゃった上に、解決されていました。
awsenv (at GitHub)
導入
Installation の項目そのままで問題なくインストールできます。
以降の部分で、一部情報を意図的に削ったり伏せたりしていますが雰囲気はお伝えできると思います。
profileの切り替え
私の場合、 ~/.aws/credentials
に saitara
というprofileがありますので、そちらを利用するようsetawsで指定します。
% setaws saitara
awsenvで確認
% awsenv Current AWS Environment Variables: AWS_SECRET_KEY matches ['saitara'] AWS_SSH_KEY_PATH not set AWS_DEFAULT_REGION matches ['saitara'] AWS_SECRET_ACCESS_KEY matches ['saitara'] AWS_VAGRANT_SUBNET_ID not set AWS_ACCESS_KEY matches ['saitara'] AWS_VAGRANT_SECURITY_GROUP not set AWS_ACCESS_KEY_ID matches ['saitara'] AWS_SSH_KEY_ID not set
exportで確認
環境変数も併せて確認しましょう。
% export| grep AWS_ AWS_ACCESS_KEY=XXXXXXXXXXXXXXXXXX AWS_ACCESS_KEY_ID=XXXXXXXXXXXXXXXXXX AWS_CONFIG_FILE=/Users/saitara/.aws/credentials AWS_DEFAULT_REGION=us-west-2 AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX AWS_SECRET_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX