Как написать тест для chef make install

Я пытаюсь написать несколько тестов для кулинарной книги шеф-повара Nginx. Я пришел к блоку. Мне нужно написать тест для кода ниже. Я могу протестировать выпуск core_lock. Я не знаю, как проверить make install, а также ./autogen.sh и ./configure --enable-standalone-module.

Документы не слишком полезны, так как это команда bash, документы немного скудны.

Код нуждается в тестировании

bash 'compile_modsecurity' do
  cwd modsec_compile_path
  code <<-EOH
    ./autogen.sh
    ./configure --enable-standalone-module
    make
    make install
  EOH
  action :nothing
  notifies :run, 'bash[release_core_nginx_lock]', :immediately
end

person Community    schedule 08.05.2018    source источник


Ответы (1)


Вы должны написать тестовый блок InSpec, который использует ресурс command, чтобы попытаться запустить nginx. Обычно вы делаете это с чем-то вроде --version, а затем подтверждаете, что это выглядит правильно. Затем вы можете попробовать запустить службу и использовать ресурс http_request, чтобы подключиться к ней на локальном хосте и получить некоторый контент.

person coderanger    schedule 08.05.2018
comment
Вау, спасибо, вы решили несколько проблем для меня, не зная. Я только начал изучать http_request. - person ; 08.05.2018
comment
Я пытался проверить версию nginx, как вы сказали, но я вообще не вижу Nginx в своей системе, но проверка service показывает, что он включен и работает, но больше ничего не показывает, как там. Возможно ли получение ложного срабатывания при включенной и работающей проверке? - person ; 08.05.2018
comment
Не утруждайте себя проверкой сервисов, важен HTTP GET. Это либо работает, либо нет. - person coderanger; 09.05.2018
comment
Хорошо, почему он появляется там с проверкой службы, но не с запросом на получение. - person ; 09.05.2018
comment
Потому что твой рецепт сломан? - person coderanger; 09.05.2018
comment
Насколько я знаю, это работает в производстве. Когда я спросил коллегу, который написал это, они ответили, что, скорее всего, потому что оно работает как часть списка выполнения. - person ; 09.05.2018
comment
Я не понимаю, но сейчас это выходит за рамки комментариев SO. Прыгайте в слабину, если вам нужна более открытая помощь :) - person coderanger; 09.05.2018