我正在尝试通过Azure Resource Manager创建一个网站,然后从私有Github存储库进行部署。
我有一个适用于公共存储库的ARM模板。如果我然后将存储库设为私有,请通过Portal连接到它,一切正常。
如果我重新部署ARM模板,它将失败并显示消息
"Cannot find SourceControlToken with name GitHub."
当门户网站连接到私有仓库时,它会创建一个用于进行身份验证的ssh密钥。
ssh键似乎来自kudu,可以在部署站点后获得。
我也尝试过使用访问令牌,但无法使用repourl
所以简单的问题是,如何通过ARM模板部署私人仓库
答案 0 :(得分:7)
要通过ARM模板使用此功能,您需要首先使用预览门户(https://portal.azure.com/)至少执行一次。您可以在任何网站上以及任何仓库中执行此操作。它只需要发生一次以建立GitHub关系。通过旧门户网站完成这项工作。
然后,检查事情是否设置正确:
/providers/Microsoft.Web/sourcecontrols/GitHub
token
已设置答案 1 :(得分:5)
当门户连接到私人仓库时,它似乎会 创建一个用于进行身份验证的ssh密钥。
多数民众赞成。
通过将GitHub存储库更改为External Git来解决同样的问题。
在模板,门户网站,azure rest api等中使用下一个网址
https://{github-username}:{access-token}@github.com/{organisation-acount}/{repo}.git
此外,这将有助于避免20个连接的GitHub限制,并且您可以在20多个Azure WebApps中使用您的存储库。