Шеф-повар: Как отлаживать поваренные книги шеф-повара?

Я новичок в шеф-повара, так что будьте осторожны, если это очевидно.

Мы используем Chef для получения желаемого состояния определенного узла (или экземпляра). Отладка с Chef немного сложна. Поэтому я думаю, что если я получу список команд (или сценария оболочки, или powershell, или msdeploy, или любого ресурса), которые выполняются в конкретном экземпляре, тогда я могу запустить их вручную и посмотреть, в чем именно заключается проблема. Я предполагаю, что на этапе конвергенции это должно быть сделано, но как я не знаю.

Есть ли способ получить список команд для предоставления экземпляра?

4 ответа

В то время как бустрап вставить -VV вариант. Это даст подробный отчет о процессе

knife bootstrap IP -VV -x username -P passwd -r role[role_id]

Я думаю, это поможет вам

Чтобы понять, что происходит при запуске chef-клиента во время разработки, вы можете попробовать запустить chef-client с -l debug вариант. Это обеспечивает больше деталей от каждого ресурса, пока он выполняется.

Может быть, вы можете использовать гем "debugger" https://github.com/cldwalker/debugger, я использовал этот гем, чтобы остановить файлы ".rb", что я когда-либо захочу, и посмотреть, что было внутри любой переменной в тот момент..... Вам нужно только установить драгоценный камень, выполнив:

gem install debugger.....

затем в файл ".rb" нужно поместить:

require "debugger"

и в той части кода, которую вы хотите остановить, поместите слово "отладчик" (без "):

debugger

но я не знаю, если это решение, которое вы ищете.... С наилучшими пожеланиями!

Вы можете использовать обработчики отчетов, которые будут собирать список обновленных, сбойных ресурсов и отправлять его на вашу почту также для каждого запуска.

Другие вопросы по тегам