У меня есть конфигурация Terraform, которая выглядит так:
resource "random_string" "foo" {
length = 31
special = false
}
resource "aws_ssm_parameter" "bar" {
name = "baz"
type = "SecureString"
value = random_string.foo.result
lifecycle {
ignore_changes = [value]
}
}
Идея состоит в том, что на первом terraform apply
ресурс bar
будет сохранен в baz
в SSM на основе значения из foo
, а затем при последующих вызовах apply
я смогу ссылаться на aws_ssm_parameter.bar.value
, однако я вижу, что он работает при первом запуске, сохраняет вновь созданное случайное значение, а затем при последующих запусках aws_ssm_parameter.bar.value
пусто.
Если я создаю источник данных aws_ssm_parameter
, который может правильно извлекать значение, но он не работает с первым apply
, когда он еще не существует. Как я могу изменить эту конфигурацию, чтобы получить значение, хранящееся в baz
в SSM, и работать над созданием значения в той же конфигурации?