Шеф выполняет команду bash и вводит ввод
Я хочу выполнить эту команду через шеф-повара:
knife client delete client_name
Команда действительно запускается от шеф-повара, используя это:
bash 'delete client from chef server' do
cwd ::File.dirname('/apps/chef-repo') # not sure if relevant
code <<-EOH
knife client delete client_name
EOH
end
Но нож требует подтверждения ввода
STDOUT: Do you really want to client_name? (Y/N)
Как выполнить нажатие кнопки "Y"?
3 ответа
Решение
Вы ищете -y (скажите "да" на запрос подтверждения). т.е.
knife client delete client_name -y
Проверьте общие параметры ножа:
-у, да
Ответьте на все запросы подтверждения "Да". нож не просить подтверждения.
Два других ответа верны в прямом смысле, но нет никаких причин выкладывать нож так, как это. Вы можете использовать HTTP-клиент Chef напрямую:
node.chef_server_rest.delete_rest('/clients/client_name')
(Думаю, прошло какое-то время)