我有一个包装器 json,如:
"builders": [{...}],
"provisioners": [
{
"type": "file",
"source": "packer/myfile.json",
"destination": "/tmp/myfile.json"
}
],
"variables": {
"myvariablename": "value"
}
而 myfile.json 是:
{
"var" : "{{ user `myvariablename`}}"
}
文件中的变量确实被替换了,在文件之后用 shell 配置器替换 sed 是这里唯一可用的选项吗?
使用包装器版本 0.12.0
最佳答案
您必须将这些作为环境变量传递。例如:
"provisioners": [
{
"type": "shell"
"environment_vars": [
"http_proxy={{user `proxy`}}",
],
"scripts": [
"some_script.sh"
],
}
],
"variables": {
"proxy": null
}
在脚本中你可以使用
$http_proxy
关于packer - 如何在 Packer 中的文件配置器中使用用户变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44673408/