如何使用Terraform缓存下载的ISO?

如何使用Terraform缓存下载的ISO?,terraform,libvirt,Terraform,Libvirt,有没有办法缓存正在下载的ISO 现在如果我terraform销毁,并且terraform应用,它将再次下载ISO 我正在使用libvirt提供程序,相关资源是: resource "libvirt_volume" "ubuntu-qcow3" { name = "ubuntu-qcow3" pool = "default" source = "https://cloud-images.ubuntu.com/releases/xenial/release/ubuntu-16.0

有没有办法缓存正在下载的ISO

现在如果我
terraform销毁
,并且
terraform应用
,它将再次下载ISO

我正在使用
libvirt
提供程序,相关资源是:

resource "libvirt_volume" "ubuntu-qcow3" {
  name   = "ubuntu-qcow3"
  pool   = "default"
  source = "https://cloud-images.ubuntu.com/releases/xenial/release/ubuntu-16.04-server-cloudimg-amd64-disk1.img"
  format = "qcow2"
}

您可以手动将图像下载到特定位置(例如,
/opt/images

只需参考此路径,因为
source
接受本地路径和远程URL:

resource "libvirt_volume" "ubuntu-qcow3" {
  name   = "ubuntu-qcow3"
  pool   = "default"
  source = "/opt/images/ubuntu-16.04-server-cloudimg-amd64-disk1.img"
  format = "qcow2"
}
似乎对测试非常有用。我是从注释掉使用本地文件路径的地方学到的。因为我不想把配置文件和二进制图像混在一起,所以我把它们移到了
/opt
,但是可以随意把它们放在你喜欢的地方

resource "libvirt_volume" "ubuntu-qcow3" {
  name   = "ubuntu-qcow3"
  pool   = "default"
  source = "/opt/images/ubuntu-16.04-server-cloudimg-amd64-disk1.img"
  format = "qcow2"
}