#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 отменит изменения при следующем запуске.