본문 바로가기

Infrastructure/Terraform

[Terraform] Date & Time Functions

Terraform Date & Time Functions 정리

Terraform v1.4.x 버전을 기준으로 날짜 및 시간과 관련된 기능을 정리한다.


formatdate

  • 타임스탬프를 다른 시간 형식으로 변환한다.
  • 형식에 대한 자세한 사양은 공식문서를 참고한다.
$ terraform console
> formatdate("YYYY-MM-DD HH:mm:ss", "2023-01-01T00:00:00Z")
"2023-01-01 12:00:00"
> formatdate("MMM DD, YYYY", "2023-01-01T00:00:00Z")
"Jan 01, 2023"

timeadd

  • 타임스탬프에 원하는 기간을 추가한다.
  • 원하는 기간을 빼고 싶은 경우 음수 형태를 사용한다.
$ terraform console
> timeadd("2023-01-01T00:30:00Z", "10m")
"2023-01-01T00:40:00Z"
> timeadd("2023-01-01T00:30:00Z", "-10m")
"2023-01-01T00:20:00Z"

timecmp

  • 두 개의 타임스탬프를 비교하고 결과를 반환한다.
  • timecmp(timestamp_a, timestamp_b) 형식으로 사용한다.
  • timestamp_a보다 timestamp_b가 이전이라면 -1을 반환한다.
  • timestamp_atimestamp_b가 동일한 시간이라면 0을 반환한다.
  • tempstamp_a보다 timestamp_b가 이후라면 1을 반환한다.
$ terraform console
> timecmp("2022-01-01T00:00:00Z", "2023-01-01T00:00:00Z")
-1
> timecmp("2023-01-01T00:00:00Z", "2023-01-01T00:00:00Z")
0
> timecmp("2023-01-01T00:00:00Z", "2022-01-01T00:00:00Z")
1
> timecmp("2023-01-01T00:00:00Z", "2023-01-01T01:00:00+01:00")
0

timestamp

  • RFC 3339 형식의 UTC 타임스탬프 문자열을 반환한다.
$ terraform console
> timestamp()
"2023-03-15T09:25:04Z"

참고한 자료

'Infrastructure > Terraform' 카테고리의 다른 글

[Terraform] IP Network Functions  (0) 2023.03.15
[Terraform] Hash & Crypto Functions  (0) 2023.03.15
[Terraform] File System Functions  (0) 2023.03.15
[Terraform] Encoding Functions  (0) 2023.03.15
[Terraform] Collection Functions  (0) 2023.03.15