我有一个 Terraform 配置,我在 AWS EC2 实例上启动了一个 systemd 服务。我需要 grep 该服务的日志并将其导出为 Terraform 输出。
启动时hello.service
,它会记录如下一行(以及许多其他行):
Root Key: F4BF9F7FCBEDABA0392F108C59D8F4A38B38
我需要该行作为 Terraform 输出。如下所示:
resource "aws_instance" "instance" {
provisioner "remote-exec" {
//start hello.service
}
}
output "rootKey" {
value = "${}" //??
}
我希望rootKey
输出的结果如下:
journalctl -u hello.service | grep "Root Key
“
正在执行aws_instance.instance
我怎么才能得到它?
答案1
使用null_resource
与local-exec
获取远程执行的输出相结合的方式。
https://github.com/matti/terraform-shell-resource为此提供了一个很好的实现。