Назад | Перейти на главную страницу

шеф-повар развернуть службу запуска и перезапустить службу последовательно

Повар останавливает и запускает обслуживание по очереди и хотел бы попросить другую процедуру.

Шаг 1.Загрузка фреймворка для службы jboss

bash "bootstrap application" do
    code <<-EOF
    ant bootstrap
    EOF
end

Шаг 2: затем запустите jboss

service "jboss" do
    action :start
end

Шаг 3: установите приложение

bash "install application" do
    code <<-EOF
    ant install
    EOF
end

между шагами 2 и 3 ant install возвращает ошибку, потому что jboss еще не запущен. но удачно на втором заходе. очевидно, что шаг 3 не знает, запущен ли jboss.

как это сделать на шеф-поваре?

Наткнулся на это по ошибке, но похоже, что такая же проблема была у меня с rundeck ... ваша служба запускается, но не запускается?

Попробуйте проверить это

service "jboss" do
    start_command 'service jboss start && sleep 30'
    action :start
end

Для rundeck это был перезапуск, с которым у меня были проблемы, и я использовал curl, чтобы проверить его, пока он не был запущен.

service 'rundeckd' do
  restart_command 'service rundeckd restart && RETRIES=0 && until curl localhost:4440 || [ $RETRIES -eq 30 ]; do (( RETRIES++ )); sleep 5; done'
  action :start
end

`` ''

Использовать подписка на ресурсы для поддержания порядка исполнения.

Использовать retries чтобы убедиться, что установка приложения работает, и вы можете запустить ресурс bash[install application] в конце повар пробегает через subscribes :run, "service[jboss]", :delayed

bash "install application" do
  code <<-EOF
  ant install
  EOF
  action :nothing
  retries 3
  subscribes :run, "service[jboss]", :delayed 
end