Json Azure数据库MySQL和Postgresql的一个ARM模板?
我目前正在尝试编写一个ARM模板,该模板应该在deploy.json文件中同时包含MySQL和PostgreSQL,然后有两个单独的参数文件,一个用于PostgreSQL,一个用于MySQL 我已经开始在一个模板,但它不工作的方式,我想它太多,我不明白为什么。在模板中,我同时拥有Microsoft.DBforMySQL/servers和Microsoft.DBforPostgreSQL/serversJson Azure数据库MySQL和Postgresql的一个ARM模板?,json,azure,azure-resource-manager,Json,Azure,Azure Resource Manager,我目前正在尝试编写一个ARM模板,该模板应该在deploy.json文件中同时包含MySQL和PostgreSQL,然后有两个单独的参数文件,一个用于PostgreSQL,一个用于MySQL 我已经开始在一个模板,但它不工作的方式,我想它太多,我不明白为什么。在模板中,我同时拥有Microsoft.DBforMySQL/servers和Microsoft.DBforPostgreSQL/servers "resources": [ { "type": "Microsoft.D
"resources": [
{
"type": "Microsoft.DBforMySQL/servers",
"apiVersion": "2017-12-01",
"name":
"location":
"sku": {
"name":
},
"properties": {
"version":
"administratorLogin":
"administratorLoginPassword":
"createMode":
"sslEnforcement":
"storageProfile": {
"storageGb":
"backupRetentionDays":
"geoRedundantBackup":
}
}
},
{
"type": "Microsoft.DBforPostgreSQL/servers",
"apiVersion": "2017-12-01",
"name":
"location":
"sku": {
"name":
},
"properties": {
"apiVersion":
"administratorLogin":
"administratorLoginPassword":
"createMode":
"sslEnforcement":
"storageProfile": {
"storageGb":
"backupRetentionDays":
"geoRedundantBackup":
}
},
我想要实现的输出是,当您使用例如“Postgre参数”文件时,它应该部署一个PostgreSQL数据库并读取资源“Microsoft.DBforPostgreSQL/servers”,反之亦然。这是可能的还是我应该停止尝试?这是可能的,但不是神奇的(你似乎认为它应该这样做)。你必须为它编码。最简单的方法是向资源添加条件:
"resources": [
{
"condition": "[equals(parameters('postgres'), true)]"
...
},
{
"condition": "[equals(parameters('mysql'), true)]"
...
},
]
您还必须将参数中的值映射到资源
语法:感谢您的回答,我对Azure还是很陌生,并且使用ARM模板(您可能已经猜到了),我正在尽最大努力学习如何使用它:)我发现最好的学习方法是问很多问题。您可以参考此示例了解postgres:。您可以在同一个repo中找到mysql