0

Ich habe folgende Ressource in ARMAzure ARM dependson Datenbank Klausel

{ 
    "name": "[parameters('dbServerName')]", 
    "type": "Microsoft.Sql/servers", 
    "location": "[resourceGroup().location]", 
    "tags": { 
     "displayName": "SqlServer" 
    }, 
    "apiVersion": "2014-04-01-preview", 
    "properties": { 
     "administratorLogin": "[parameters('dbuser')]", 
     "administratorLoginPassword": "[parameters('dbpassword')]", 
     "version": "12.0" 
    }, 
    "resources": [ 
     { 
     "name": "[parameters('dbName')]", 
     "type": "databases", 
     "location": "[resourceGroup().location]", 
     "tags": { 
      "displayName": "[parameters('dbName')]" 
     }, 
     "apiVersion": "2014-04-01-preview", 
     "dependsOn": [ 
      "[parameters('dbServerName')]" 
     ], 
     "properties": { 
      "edition": "[parameters('edition')]", 
      "collation": "[parameters('collation')]", 
      "maxSizeBytes": "[parameters('maxSizeBytes')]", 
      "requestedServiceObjectiveName": "[parameters('requestedServiceObjectiveName')]" 
     } 
     }, 
     { 
     "name": "[parameters('hivedbName')]", 
     "type": "databases", 
     "location": "[resourceGroup().location]", 
     "tags": { 
      "displayName": "[parameters('hivedbName')]" 
     }, 
     "apiVersion": "2014-04-01-preview", 
     "dependsOn": [ 
      "[parameters('dbServerName')]" 
     ], 
     "properties": { 
      "edition": "[parameters('edition')]", 
      "collation": "[parameters('collation')]", 
      "maxSizeBytes": "[parameters('maxSizeBytes')]", 
      "requestedServiceObjectiveName": "[parameters('requestedServiceObjectiveName')]" 
     } 
     }, 
     { 
     "name": "[parameters('ooziedbName')]", 
     "type": "databases", 
     "location": "[resourceGroup().location]", 
     "tags": { 
      "displayName": "[parameters('ooziedbName')]" 
     }, 
     "apiVersion": "2014-04-01-preview", 
     "dependsOn": [ 
      "[parameters('dbServerName')]" 
     ], 
     "properties": { 
      "edition": "[parameters('edition')]", 
      "collation": "[parameters('collation')]", 
      "maxSizeBytes": "[parameters('maxSizeBytes')]", 
      "requestedServiceObjectiveName": "[parameters('requestedServiceObjectiveName')]" 
     } 
     }, 
     { 
     "type": "firewallrules", 
     "apiVersion": "2014-04-01-preview", 
     "dependsOn": [ 
      "[parameters('dbServerName')]" 
     ], 
     "location": "[resourceGroup().location]", 
     "name": "AllowAllWindowsAzureIps", 
     "properties": { 
      "endIpAddress": "0.0.0.0", 
      "startIpAddress": "0.0.0.0" 
     } 
     } 
    ] 
    }, 

über eine andere Ressource dependson haben wollen, so habe ich versucht

[concat('Microsoft.Sql/servers,'/',parameters('dbServerName'),'/databases/',parameters('hivedbName'))] 

folgenden in der dependson in meiner nächsten Ressource hinzugefügt bekam aber folgende Fehler:

New-AzureRmResourceGroupDeployment : 4:46:59 PM - Error: Code=InvalidTemplate; Message=Deployment template validation failed: 'Circular dependency detected on resource: '/subscriptions/######/resourceGroups/QA/providers/Microsoft.Sql/servers/sparkqa/databases/SparkQAHive'. 

Dann habe ich versucht

"dependsOn": [ 
     "[concat('Microsoft.Sql/servers/', parameters('dbServerName'))]", 
     "[concat('Microsoft.Sql/servers,'/',parameters('dbServerName'),'/databases/',parameters('hivedbName'))]" 

    ], 

Aber es starten noch die Ressourcen bereitstellen, noch bevor concat('Microsoft.Sql/servers,'/',parameters('dbServerName'),'/databases/',parameters('hivedbName')) erstellt

Dies ist die komplette Vorlage https://paste.fedoraproject.org/454465/14767382/raw/

Wer weiß, was hier falsch?

+0

posten Sie Ihre komplette json Vorlage nach der Änderung – itaysk

+0

ich den Link für eine vollständige Vorlage hinzugefügt haben, hier bei https://paste.fedoraproject.org/454465/14767382/raw/ – roy

+0

So wird der HDInsight-Cluster vor dem SQL Server und DB erstellt? Wie beobachtest du das? – itaysk

Antwort

0

Sie auf der tatsächlichen Ressource abhängen sollte, nicht nur auf dem SQL-Server-Name:

  "dependsOn": [ 
       "[concat('Microsoft.Sql/servers/', parameters('serverName'))]" 
      ], 
+0

Ich habe meine Frage aktualisiert, nicht mit Ihrem Vorschlag gearbeitet. – roy

Verwandte Themen