この記事は、カサレアル Advent Calendar 2022 の19日目のエントリです。
はじめに
ユニークな文字列が欲しかったので、年月日時分秒を取得し文字列にしました。
以下の関数を組み合わせます。
- timestamp - Functions - Configuration Language | Terraform | HashiCorp Developer
- timeadd - Functions - Configuration Language | Terraform | HashiCorp Developer
- formatdate - Functions - Configuration Language | Terraform | HashiCorp Developer
TFファイル
現在の時間2022年12月18日11時26分29秒
を20221218112629
に変換します。
- tfファイル
locals { # timestampでUTCを取得する now_utc = timestamp() # timeaddで9hを足してJSTに変換する now_jst = timeadd(local.now_utc, "9h") # formatdateで取得したい形式に変換する datetime = formatdate("YYYYMMDDhhmmss", local.now_jst) } output "datetime"{ value = local.datetime }
実行結果
$ terraform apply Changes to Outputs: + datetime = (known after apply) You can apply this plan to save these new output values to the Terraform state, without changing any real infrastructure. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes Apply complete! Resources: 0 added, 0 changed, 0 destroyed. Outputs: datetime = "20221218112629" $
備考
24時間表記にするため、formatdate関数ではhhを指定します。