Я создаю шаблон Packer для использования с несколькими файлами переменных и хотел передать имя построителя через переменную, чтобы инициаторы выполнялись только в соответствии с функцией, которую я хочу выполнить.
Я пробовал кодировать это так:
{
"variables": {
"name": "",
"project_id": "",
"source_image_family": "",
"zone": "",
...
},
"sensitive-variables": [
"account_file",
"winrm_username",
"elevated_user",
"elevated_password"
],
"builders": [
{
"name": "{{user `name`}}",
"type": "googlecompute",
"project_id": "{{user `project_id`}}",
...
}
]
}
А затем передайте переменные как:
{
"name": "your_builder_name",
...
}
Но когда я пытаюсь проверить, он всегда сообщает, что конструктор не найден.
Есть идеи, как это сделать или возможно ли это? Я попробовал поискать в Интернете и нашел старое указание на то, что это было невозможно, но потом я нашел сообщение о том, что теперь это возможно, но не нашел примера, чтобы проверить, как я подхожу к этому ...
Спасибо за любой вклад! :)
Редактировать: После еще нескольких исследований и обсуждения с коллегами я пришел к выводу, что это невозможно. "Единственная" функция может использоваться (с определенной целью) только в том случае, если у вас есть несколько конструкторов в одном коде ... жалко ...