AWS CLIのPROFILE切り替え

aws

aws cli では、複数のプロファイルを切り替えることができます。
以下のようなコマンドで、プロファイルを作成できます。
$ aws configure
この場合は、ランダムな値のプロファイル名ができますが、プロファイル名を指定したい場合は、–profileオプションを指定します。例えばdefault という名前のプロファイルを作成したい場合は
$ aws configure –profile default
などとします。プロファイルを指定してコマンドを発行したい場合も
$ aws s3 ls –profile プロファイル名
という感じで可能です。
が、いちいち記載するのが面倒なので,
AWS_DEFAULT_PROFILE という環境変数にプロファイル名をセットして置くといいでしょう。
$ export AWS_DEFAULT_PROFILE=default
こんな感じです。
なお、どのプロファイルを使ってなんの値が設置されているかは、下記のコマンドで確認できます。
$ aws configure list

さて、これで複数の案件とかでも接続先を切り替えて作業できるようになるかと思います。
が、なかなかそうもいかない。
例えば、Teraformだったりserverlessフレームワークだったり環境構築をコードで行なっている場合、
間違えて他の環境にデプロイされてしまうのを防ぐために、プロファイルをあえて指定している場合もあります。プロファイル名が被っちゃったりすると面倒ですね。
その場合は、作業環境自体のユーザーを分けておくと良いと思います。
その他の方法としては、そもそもデプロイに関してはローカル環境から行わず、GitHubActionsやCircleCIなどで行う運用も考えられます。

タイトルとURLをコピーしました