Обновление web.config в веб-развертывании Chef Windows

#windows #iis #deployment #web-config #chef-infra

#Windows #iis #развертывание #web-config #шеф-повар-инфра

Вопрос:

Я изучаю и пытаюсь реализовать веб-развертывание chef для IIS в Windows. Мне нужна помощь относительно обновления файла web.config.

Я получил из Интернета, что мы должны создать файл шаблона erb с web.config, имеющий место holder ( =node['cookbook']['variable'] ), чтобы мы могли заменить это место holder значениями атрибутов, специфичных для среды, во время выполнения.

Как я могу синхронизировать свой erb-файл с последней версией сборки web.config? Если я возьму и обновлю файл с сервера CI, когда процесс CI запущен, как я могу добавить заполнителей?

У меня много файлов (от 5 до 6) для обновления значений, зависящих от среды, поэтому я подумал о редактировании файла конфигурации непосредственно после развертывания на сервере вместо замены на erb-файл для удобства обслуживания. Это будет идея? Нарушит ли это идемпотентность? Какой из них является хорошим методом с точки зрения простоты обслуживания?

Ответ №1:

Данные файла шаблона хранятся внутри кулинарной книги, поэтому вы управляете ими вместе с кодом рецепта и другими файлами кулинарной книги. Обычно, когда вы перемещаете что-либо для управления с помощью Chef, вы вручную извлекаете текущее содержимое файла с сервера и вставляете его в файл шаблона. Затем отредактируйте его, чтобы добавить заполнитель <%= @name %> значения или другие более сложные вещи, такие как each циклы. После этого все изменения в файлах должны быть выполнены путем обновления поваренной книги Chef, иначе Chef отменит изменения при следующем запуске.