У меня есть команда curl, которая является запросом на мыло и с заголовками, такими как basic auth. Мне нужно реализовать этот завиток в рецепте шеф-повара для автоматизации. Поэтому каждый раз, когда я выполняю скрипт шеф-повара, я вижу, что этот завиток тоже выполняется. Пожалуйста, посоветуйте мне синтаксис добавления команды curl в скрипт шеф-повара.Как выполнить команду curl в рецепте шеф-повара?
ответ
Вы можете использовать команды Баша в рецепте шефа
bash 'install_something' do
user 'root'
cwd '/tmp'
code <<-EOH
wget http://www.example.com/tarball.tar.gz
tar -zxf tarball.tar.gz
cd tarball
./configure
make
make install
EOH
end
есть этот пример здесь: https://docs.chef.io/resource_bash.html. Просто позвоните в команду curl. Имейте в виду, что это не настоящий поварский путь. Ресурс bash должен использоваться только в том случае, если другого выхода нет.
Но следует избегать использования ресурса 'bash'. Как правило, есть «шеф-повар», чтобы делать что-то. – StephenKing
@ StephenKing Вы совершенно правы. И почти всегда есть шеф-повар. – NaN
В идеале вы могли бы добавить защитника, который помешал бы ему запустить КАЖДОЕ время (хотя я понимаю, что это то, что запросил ОП). Добавление полезного охранника, по крайней мере, приблизит его к «Шеф-повару». –
Не могли бы вы сделать это, используя ресурс http_request?
Что-то вроде:
http_request 'SOAP request' do
url "http://www.example.com/example"
message <xml request>
action :post
end
Есть ли способ, я могу видеть, какая команда завитка рецепт шеф-повара побежал? – inquisitive
Простой command
должен работать, похожее на это.
command "curl -m 5 -i -X POST -d \"payload={}\" http://www.some.place/here"
Обратитесь к странице руководства для завитки, чтобы узнать, как добавить заголовки http.
Вы также можете использовать ресурс bash. Например
bash 'make curl request' do
cwd ::File.dirname(src_filepath)
code <<-EOH
curl -L https://github.com
EOH
end
cwd
это каталог, в котором Баш оболочка будет работать в.
- 1. выполнить команду curl в python
- 2. Как выполнить команду CURL post в bash?
- 3. Как выполнить команду curl для окон
- 4. Java выполнить команду «Время Curl -s»
- 5. Adobe CQ- Можно ли выполнить команду CURL?
- 6. Как выполнить эту команду curl в моем java-коде?
- 7. Запустить команду в рецепте битбокса, как будто в живой системе
- 8. Как я могу выполнить эту команду curl на express.js/node.js?
- 9. Как выполнить эту команду cURL с помощью AJAX?
- 10. как выполнить действие оболочки oozie со скриптом, имеющим команду curl
- 11. Как автоматизировать пользовательскую интерактивную команду в рецепте шеф-повара
- 12. CURL: как запустить одиночную команду curl 100 раз?
- 13. Как вернуть команду выполнить
- 14. Как выполнить команду?
- 15. PHP, как выполнить команду
- 16. Выполнить строку как команду
- 17. Как выполнить команду в WPF
- 18. как выполнить команду в scala?
- 19. Как выполнить команду в C#?
- 20. функция Python Lambda не может выполнить команду HTTPS Curl
- 21. Curl команду жрать
- 22. Как выполнить команды curl в laravel 5.2?
- 23. выполнить команду в javascript
- 24. Невозможно выполнить команду CURL через java Runtime.getRuntime(). Exec()
- 25. выполнить команду в подкаталогах
- 26. Как преобразовать эту команду curl в php curl code?
- 27. преобразовать команду curl в php
- 28. Как преобразовать команду CURL Линукс в PHP
- 29. Как преобразовать команду curl в http-запрос?
- 30. Как использовать команду curl в PowerShell?
Что ваша конечная цель? Это противоречит мышлению идемпорядка. Вы хотите, чтобы для какой-то отчетности/мониторинга вашего шеф-повара? Вместо выполнения команды вы также можете использовать http-клиент Ruby. – StephenKing
Правильный Стивен, рассматривая вызов внешнего REST API с помощью ruby и обертывание его как ресурса Lightweight. Если, с другой стороны, ваш просто вызов внешней службы для установки некоторых данных узла и действительно хороший подход - это вызов службы REST в качестве плагина ohai. Множество вариантов более подробно помогут лучше советом. –