将文件内容作为 Terraform 输出获取

将文件内容作为 Terraform 输出获取

我有一个 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_resourcelocal-exec获取远程执行的输出相结合的方式。

https://github.com/matti/terraform-shell-resource为此提供了一个很好的实现。

相关内容