使用Kudu和cUrl部署到Azure

时间:2017-02-07 17:48:30

标签: azure kudu

我正在尝试从脚本部署Azure应用程序。 已经为外部git存储库部署设置了Azure。 我已将部署密钥(Azure的SSH公钥)设置为Gitlab

以下作品

curl -X POST 
     -H "Content-type: application/json"
     -d "{'format':'basic', 'url':'https://GITLABUSER:GITLABUSERPASSWORD@gitlab.com/MYTEAM/MYGIT.git'}"
     -u "AZUREUSERNAME:AZUREPASSWORD"  
     https://MYSITE.scm.azurewebsites.net/deploy

有没有办法在请求中不指定Gitlab用户和密码,因为Azure已经知道要从哪里获取Git的地址?

1 个答案:

答案 0 :(得分:0)

如果没有用户名/密码,根据code在处理GitLab时明确检查它们的存在情况,它看起来不起作用。

更好的方法是使用ARM同步API,而不是直接与(较低级别)Kudu API对话。例如关于如何使用PowerShell调用它的示例here

Invoke-AzureRmResourceAction -ResourceGroupName $ResourceGroupName -ResourceType Microsoft.Web/sites -Name $SiteName -Action sync -ApiVersion $WebAppApiVersion -Force

您可以通过支持进行ARM API调用的任何机制调用相同的API。

上一个(不正确)答案

尝试在有效负载中传递ssh url而不是https。我相信它会做正确的事。