Вы можете попробовать это:
http_request 'Post backup xml' do
headers ({
'Content-Type' => 'multipart/form-data',
'AUTHORIZATION' => "Basic #{Base64.encode64('admin:admin')}"
})
action :post
url "#{sonarqube_rest_uri}/qualityprofiles/restore"
message ::File.read("/tmp/backup2.xml")
end
Флаг -F
указывает, что вам нужен заголовок multipart/form-data
.Вам также понадобится заголовок авторизации для -u admin:admin
, который имеет хороший документ от Chef .Действие и URL довольно просты.Наконец, прочитайте содержимое вашего файла как сообщение с ::File.read
.
Однако аналогичный вопрос относительно типа контента multipart/form-data
предполагает, что этот тип контента может не работать для http_request
.Однако, надеюсь, это поможет вам понять, как превратить запрос curl
в http_request