Farmer库有用于创建虚拟机的构建器,尽管它支持参数" diagnostics_support_external ";
启用已创建的存储帐户的引导诊断。let storageAccount = LinkedResource.Unmanaged resourceId
vm {
diagnostics_support_external storageAccount
}
但是它生成了不正确的手臂模板。当前,它生成带有以下属性的手臂模板:
"properties": {
"diagnosticsProfile": {
"bootDiagnostics": {
"enabled": true,
"storageUri": "[reference('sa0ce3c1e410a5ec454941').primaryEndpoints.blob]"
}
},
以上生成的模板无法创建资源,Azure报错如下错误
{
"code": "InvalidTemplate",
"message": "Deployment template validation failed: 'The template reference 'sa0ce3c1e410a5ec454941' is not valid: could not find template resource or resource copy with this name. Please see https://aka.ms/arm-template-expressions/#reference for usage details.'."
}
正确的模板应该是这样的,因为经过此修改后Azure能够解析存储帐户资源。
"diagnosticsProfile": {
"bootDiagnostics": {
"enabled": true,
"storageUri": "[reference(concat('Microsoft.Storage/storageAccounts/', 'sa0ce3c1e410a5ec454941'),'2015-06-15').primaryEndpoints.blob]"
}
},
有人能帮忙吗?
这是Farmer库中的一个bug,团队正在解决它。此修复的目标是版本1.7.4。https://github.com/CompositionalIT/farmer/pull/945