Привет, у меня есть рецепт, в котором я пытаюсь проверить, работает ли служба и доступна ли она.
Итак, у меня есть « ruby_block », который проверяет, работает ли служба, если не она, « уведомляет » в блоке « execute », чтобы запустить его, один раз блок execute запускает сервис, который мне нужен, чтобы еще раз проверить, работает ли он, вызвав «ruby_block» с помощью « подписывается »
Но когда служба не запускается, « ruby_block » переходит в неостанавливаемый цикл.
Ниже приведен рецепт, описывающий рабочий процесс
ruby_block 'check_if_Service_running' do
block do
# ...some logic to check service
# generates a return code 301 if successful or any other value if fails and
# assign it to an attribute check eg. value = return_code
end
notifies :run, 'execute['start_service']', :immediately
subscribes :run,'execute[Start_Service]', :immediately
end
execute 'Start_Service' do
#...code to start the service
action :nothing
not_if { value == 301 }
end
Таким образом, в этом случае, когда Службы не запускаются даже после выполнения блока, ruby_block продолжает работать и уведомляет блок «Выполнить» и т. Д.
примечание: при успешном запуске службы оно показывает ожидаемое поведение
Но иногда, когда служба не запускается, она зацикливается
Пожалуйста, помогите мне здесь, чтобы остановить "ruby_block" из-за циклических вызовов более 2 раз и остановить все (цикл), если служба чувствовала, что запускается
Любая помощь будет оценена!