来自模块中变量的动态预配器

时间:2019-04-14 16:06:54

标签: terraform

我刚刚学习了一些有关Terraform的基础知识,并创建了具有AWS EC2重要性的简单可重用Terraform模块以及一些其他资源(安全组,弹性ip,ssh密钥对等),该资源可在https://github.com/g4s8/docker-worker上获得

现在,我想在创建时将本地文件复制到EC2实例(我猜测使用file provisioner)。是否可以这样定义文件变量:

module "worker" {
  # ...
  files = [
    {
      src: "./file1",
      dst: "/home/ec2-user/file1"
    },
    {
      src: "./file2",
      dst: "/home/ec2-user/file2"
    }
  ]
}

并根据以下变量创建动态预配器:

resource "aws_instance" "worker" {
  # pseudocode:
  # for (file : var.files) {
      provisioner "file" {
        source = file.source
        destination = file.destination
      }
  # } 
}

所以我的问题是:是否可以在模块中动态生成预配器,如果可以的话,如何对文件的所有项目进行迭代以创建预配器?我在input variable documentation中找不到与此相关的参考。

0 个答案:

没有答案
相关问题