Open8

terraform consoleを使ってみる

not75743not75743

事前準備

これを使います。init,applyを事前にしておきましょう。

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 4.65.0"
    }
  }
}

provider "aws" {
  region = "ap-northeast-1"
}

data "aws_caller_identity" "current" {}
data "aws_region" "current" {}

起動方法

terraform consoleでOKです

$ terraform console
>
not75743not75743

aws_caller_identityを見てみる

自身のアカウント情報が出てくるはずです

> data.aws_caller_identity.current
{
  "account_id" = "xxxxxxxxxxxxx"
  "arn" = "arn:aws:iam::xxxxxxxxxxxxx:user/xxxx"
  "id" = "xxxxxxxxxxxxx"
  "user_id" = "xxxxxxxxxxxxxxxxxxxxxx"
}

OK

not75743not75743

aws_regionを見てみる

> data.aws_region.current
{
  "description" = "Asia Pacific (Tokyo)"
  "endpoint" = "ec2.ap-northeast-1.amazonaws.com"
  "id" = "ap-northeast-1"
  "name" = "ap-northeast-1"
}

OKです。
取得出来る情報が確認出来るのは便利ですね

not75743not75743

applyをやらない

applyをしないと情報が取得出来ません。

> data.aws_region.current
(known after apply)
not75743not75743

関数の確認も出来る

> cidrnetmask("192.168.0.0/16")
"255.255.0.0"
not75743not75743

ワンライナーでもいける

$ echo 'cidrnetmask("192.168.0.0/16")' | terraform console
"255.255.0.0"