blob: f63dca9fcd0b58242c47a990231c88afcf819d2f [file] [log] [blame]
variable "ami" {
type = string
default = "ami-test"
}
variable "id_minimum_length" {
type = number
default = 10
}
resource "test_instance" "foo" {
ami = var.ami
lifecycle {
precondition {
condition = can(regex("^ami-", var.ami))
error_message = "Invalid AMI ID: must start with \"ami-\"."
}
}
}
resource "test_instance" "bar" {
ami = "ami-boop"
lifecycle {
postcondition {
condition = length(self.id) >= var.id_minimum_length
error_message = "Resource ID is unacceptably short (${length(self.id)} characters)."
}
}
}
output "foo_id" {
value = test_instance.foo.id
precondition {
condition = test_instance.foo.ami != "ami-bad"
error_message = "Foo has a bad AMI again!"
}
}