#ruby #chef-infra #chef-recipe
#ruby #chef-инфра #шеф-рецепт
Вопрос:
Может кто-нибудь сообщить мне, как я могу выполнить приведенную ниже команду, используя chef-14?
dpkg-query --status log-agent | grep -q '^Version: 212121
Я могу найти ресурс dpkg_package. Но ничего для dpkg-query
. Я намерен использовать приведенную выше команду в, include_recipe
поэтому использование guards
для меня не вариант.
Если возможно, я хотел бы избежать shell_out
.
Ответ №1:
вы можете выполнить системную команду многими способами … из вашего вопроса неясно, хотите ли вы извлечь выходные данные команды или просто использовать ее в качестве защиты.
если вы хотите только выполнить его, вы можете использовать execute
, bash
и даже ruby_block
для его достижения.
Комментарии:
1. Мне нужно знать, является ли
log-agent
установленная версия212121
2. @tuk: а если это не так
212121
, вы, вероятно, хотите что-то сделать (или не делать)… поэтому используйте защиту….3. Я хочу сделать
include_recipe
, если версия не 212121 . Я думаю, чтоguard
не работает сinclude_receipe
.