Terraform Time Provider
验证:未记录
- 适用版本
- 未记录
- 验证范围
- 尚未登记验证记录。
用途#
| Resource | 用途 |
|---|---|
time_static |
保存创建时的时间戳 |
time_offset |
保存基准时间并计算偏移 |
time_sleep |
创建或销毁时等待指定时长 |
time_rotating |
到期后在 Terraform 运行时触发时间资源重建 |
示例#
记录创建时间,并使用 30 天的轮换周期触发随机密码替换。
terraform {
required_providers {
time = {
source = "hashicorp/time"
version = "~> 0.13"
}
random = {
source = "hashicorp/random"
version = "~> 3.0"
}
}
}
resource "time_static" "created" {}
resource "time_rotating" "password" {
rotation_days = 30
}
resource "random_password" "service" {
length = 24
special = false
keepers = {
rotation = time_rotating.password.id
}
}
output "created_at" {
value = time_static.created.rfc3339
}示例仅生成密码;目标服务需引用 random_password.service.result 才会接收新值。
注意事项#
time_rotating不是后台定时器;到期后需要执行 Terraform,审查并应用变更。- 密码轮换需协调服务端与客户端更新,密码本身仍保存在 state。
time_sleep用create_duration = "30s"或destroy_duration = "30s"指定等待;通过依赖关系把等待放在正确位置。- 固定等待不能确认服务就绪,优先使用 provider 的重试或服务健康检查。
- 不要用
timestamp()作为持续变化的触发条件;需要固定创建时间时使用time_static。