Шеф-повар - Блок не выполняется, даже если его уведомили? - PullRequest
0 голосов
/ 14 сентября 2018

Я просматривал этот код несколько раз, и я не уверен, почему блок extract_presta не запускается.Я подтвердил, что файл, который я ищу, не находится в каталоге / var / www / html: c)

Что я пытаюсь достичь, это:

  • загрузитьфайл, распакуйте его, но только если определенный файл не существует
  • Остановите apache после загрузки, распакуйте файл
  • запустите apache

Могу ли я спроситьза совет, пожалуйста?Благодарю.-нат

service "apache" do
  action :nothing
end

execute 'extract_presta' do
  command 'unzip /tmp/prestashop_1.7.4.2.zip'
  cwd '/var/www/html'
  not_if { File.exists?("/var/www/html/autoload.php") }
  action :nothing
  notifies :start, "service[apache]"
end

# Fetch the file. Maybe the file won't be fetched because of not_if or checksum.
# In that case apache won't be stopped or started, it will just keep running.
  remote_file "/tmp/prestashop_1.7.4.2.zip" do
  source "https://download.prestashop.com/download/releases/prestashop_1.7.4.2.zip"
  notifies :stop, "service[apache]", :immediately
  notifies :run, 'execute[extract_presta]', :immediately
end

1 Ответ

0 голосов
/ 14 сентября 2018

Загрузка уже существует? Если это так, то ресурс remote_file будет помечен как обновленный и не будет запускать уведомления.

...