Можно ли добавить частичный шаблон в существующий файл? [поваренная книга шеф-повара]
Я ищу, чтобы добавить конфигурации в файл conf, который извлекается из файла tar.
В настоящее время поваренная книга использует шаблон для перезаписи всего файла, вместо этого мне нужно использовать исходный файл в качестве шаблона и добавить к нему.
Частичные шаблоны, кажется, выполняют задачу, но я не смог найти пример частичного применения к существующему файлу,
это вообще возможно?
благодарю вас
1 ответ
Нет, ты не можешь этого сделать. Если оригинал не является шаблоном erb, то вы не можете использовать его таким образом. У вас действительно есть два варианта.
- Создайте шаблон, который включает в себя исходный файл как частичное внутри него. Я думаю, что это сработает, хотя я никогда не пробовал, и я не уверен, что система шеф-повара позволит вам использовать файл вне кулинарной книги как часть.
- Использовать
FileUtil
Модуль от шеф-повара, чтобы изменить файл на месте. Если вы сделаете это, я настоятельно рекомендую вам создать LWRP, чтобы обернуть его, и создать новый файл в кеше chef, а затем сравнить с существующим файлом и только "обновлять", если есть изменения.
В действительности, ваша лучшая ставка почти наверняка состоит в том, чтобы просто использовать собственный шаблон erb для него. Если в оригинале есть какие-то особые данные, которые вам нужно перехватить, вы можете использовать ruby_block, чтобы прочитать эти данные из оригинала и затем передать их в свой шаблон.
Похоже, вы можете использовать второй метод. Я попытался использовать частичный шаблон из этого примера, но https://github.com/danielsdeleo/partials