🛌

Terraformで作成したIAMロールのArnを楽して知りたい

2023/07/01に公開

はじめに

TerraformでIAMロールを作成したのですが、そのArnが必要になりました。
わざわざAWSのコンソールで調べるのも手間、awscliで検索しようにもすぐにコマンドがでてこない、outputで出力もしていない...
ということで手軽に調査する方法を探しました。

環境

Terraform v1.4.6

結論

  • terraform consoleでリソースの値を出力できる
  • リソース名はterraform state listで出力できる
  • terraform state listでリソース名を調べて、terraform consoleで調べるのがよさそう

terraform consoleを使ってリソース詳細を出力

terraform consoleを使うことで対話形式でリソースの値の確認が出来ます。
今回はaws_iam_roleArn属性を確認すればよいです。

> aws_iam_role.githubactions.arn
"arn:aws:iam::<AccountID>:role/githubactions"

ワンライナーも可能

コマンドをパイプで渡すことで非対話形式でも実行可能です。

$ echo "aws_iam_role.githubactions.arn" | terraform console
"arn:aws:iam::<AccountID>:role/githubactions"

terraform state listでリソース名を知る

terraformで管理しているリソースをterraform state listで出力出来ます。
tfファイル内を探すのもいいのですが、こちらのほうが楽そうでした。
これで対象のリソース名を調べて、terraform consoleで詳細を出力するのがよさそう。

$ terraform state list
aws_iam_role.githubactions
// 略

参考

https://developer.hashicorp.com/terraform/cli/commands/console
https://zenn.dev/amezousan/scraps/b02f058a0f4abf
https://developer.hashicorp.com/terraform/cli/commands/state/list

Discussion