如何将Packer.io ISO_URL作为命令行参数传递

时间:2017-01-25 22:03:37

标签: packer

我想将ISO_URL作为命令行参数传递。我试图在https://www.packer.io/docs/templates/user-variables.html

上关注一个例子

我的变量部分看起来像

https://angular.io/docs/ts/latest/cookbook/a1-a2-quick-reference.html

变量引用

"variables": {
    "build_version": "1.0.0",
    "iso_checksum_type":"md5", 
    "iso_checksum":"453312bf56fc45669fec5ebc0f025ac7",
    "iso_url":"c:\fake.iso"
}

,构建命令是

   ...
  "iso_checksum": "{{user `iso_checksum`}}",
  "iso_checksum_type":"{{user `iso_checksum_type`}}",
  "iso_url": "{{user `iso_url`}}",
  ...

但是,iso_url没有被覆盖,打包器正在尝试下载fake.iso

为什么?

确切的结果是

packer build -var 'iso_url=c:\debian.iso' packerio.json

1 个答案:

答案 0 :(得分:4)

解决方案是用double替换单引号或将引号保留。

packer build -var "iso_url=c:\debian.iso" packerio.json

packer build -var iso_url=c:\debian.iso packerio.json

此外,相对路径也适用

packer build -var iso_url=\subfolder_name\debian.iso packerio.json

感谢@RickardvonEssen指出我正确的方向。