是否可以在ARM模板中检查 如果我的虚拟机的名称已经存在?
我正在为Azure Marketplace开发解决方案模板。也许可以在 UiDefinition uniqe中设置参数?
目标是重现这个绿色钩子
答案 0 :(得分:1)
根据documentation,这看起来不可能。
没有任何验证方法。
答案 1 :(得分:1)
有几个笔记......
鉴于我们不太可能构建一个控制来检查资源上的命名冲突而没有全局唯一约束。
那有帮助吗?
答案 2 :(得分:0)
我假设您应该在createUiDefinition.json中使用 Microsoft.Common.TextBox UI 元素。
我尝试通过如下所示使用 Microsoft.Common.TextBox UI 元素创建一个简单的createUiDefinition.json来重现绿色检查。
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json",
"handler": "Microsoft.Compute.MultiVm",
"version": "0.1.2-preview",
"parameters": {
"basics": [
{
"name": "textBoxA",
"type": "Microsoft.Common.TextBox",
"label": "VM Name",
"defaultValue": "",
"toolTip": "Please enter a VM name",
"constraints": {
"required": true
},
"visible": true
}
],
"steps": [],
"outputs": {}
}
}
但是,此绿色检查并不意味着VM名称可用。 这是因为根据我的测试,即使我在同一订阅中使用现有的VM名称,它仍然显示绿色检查。
根据 Microsoft.Common.TextBox UI元素支持的官方文档constraints,不会验证名称可用性。
希望这有帮助!