Для вызова любого рецепта используется метод include_recipe. Я создал обработчик исключений, в котором вызываю рецепт отката. Однако это не работает. Вот мой код:
require 'chef/log'
require 'time'
module TEST
class ExceptionHandler < Chef::Handler
def report
if run_status.failed? then
Chef::Log.info("Running Report handler for failed client run...")
Chef::Log.info("Formatted Exception: "+run_status.formatted_exception)
//here i want to call rollback recipe
include_recipe "TEST::rollback"
else
Chef::Log.info("Running success...")
end
end
end
end
Файл журнала содержит следующее:
- «Запуск обработчика отчетов при неудачном запуске клиента»
- «Форматированное исключение»
Однако в лог-файле я не нашел ничего, что упоминало бы рецепт отката.
Правильный ли код, который я использовал выше для вызова рецепта?
TEST
? Вы вставили в нихprint
операторов, чтобы убедиться, что они вызываются? Как вы имитируете неудачныйrun_status
в вашем тесте? - person Sabuncu   schedule 10.06.2014