2017-06-24 10 views
0

Azureリソースパッケージをデプロイしようとするとこのエラーが発生します。 'resourceId'を回避する方法を見つけることが大好きです:関数は正確に1つのマルチセグメント化された引数ステートメントを必要とします。ARMデプロイメントresourceIDがservicebusで動作しない

[ERROR] New-AzureRmResourceGroupDeployment : 2:17:06 PM - Error: Code=InvalidTemplate; 
14:17:06 - [ERROR] Message=Deployment template validation failed: 'The template resource 
14:17:06 - [ERROR] 'xxxxx/basket-item-changed-topic/basket-telemetry-processor' at line 
14:17:06 - [ERROR] '2799' and column '10' is not valid: Unable to evaluate template language 
14:17:06 - [ERROR] function 'resourceId': function requires exactly one multi-segmented argument 
14:17:06 - [ERROR] which must be resource type including resource provider namespace. Current 
14:17:06 - [ERROR] function arguments 'Microsoft.ServiceBus/namespaces/topics,xxxxxx/bask 
14:17:06 - [ERROR] et-item-changed-topic'. Please see 

-------------------これは、テンプレート

{ "コメント" である:リソースから「一般: 「/サブスクリプション/fa17ed69-d83f-47bc-8604-fd96cd27d322/resourcegroups/xxxxxxx-Integration-Environment/providers/Microsoft.ServiceBus/namespaces/xxxxx/topics/basket-item-changed-topic/subscriptions/basket-telemetry-processor '。 "、 "type": "Microsoft.ServiceBus/namespaces/topics/subscriptions"、
"name": "[パラメータ( 'subscriptions_basket_telemetry_processor_name')]」、
"apiVersion": "2015-08-01"、 "location": "UK West"、
"scale":null、 "properties":{
"lockDuration": "00:02:00"、 "requiresSession":偽、
"defaultMessageTimeToLive": "10675199.02:48:05.4775807"、
"deadLetteringOnMessageExpiration":真、
"deadLetteringOnFilterEvaluationExceptions":真、
"MessageCountこの":0、 "maxDeliveryCount":1、
"enableBatchedOperations":true、 "status": "アクティブ"、
"createdAt": "2017-05-10T14:31:54.2059078Z"、
"updatedAt": "2017-05-10T14:31:56.6330818Z"
"accessedAt": "2017-06-23T10:53:20.3815084Z"
"countDetails":{ "activeMessageCount":0 、
"deadLetterMessageCount":0、
"scheduledMessageCount":0、 "transferMessageCount": 0、 "transferDeadLetterMessageCount":0
}、 "autoDeleteOnIdle": "10675199.02:48:05.4775807"
"entityAvailabilityStatus" : "Available"}、
"dependsOn":[
"[resourceId( 'Microsoft.ServiceBus/namespaces'、 のパラメータ( 'namespaces_xxx_int_name'))]」、
"[RESOURCEID( 'Microsoft.ServiceBus /名前空間/トピック'、 パラメータ( 'topics_basket_item_changed_topic_name'))]"]
}、

+0

はすべて同じテンプレート内のリソースですか? – 4c74356b41

+0

それらは同じ紺色のリソーステンプレートにあります –

+0

私はここでも尋ねましたが、ソリューションの実装方法を理解していませんでした。参考https://github.com/Azure/azure-quickstart-templates/issues/1965 –

答えて

0

これは命名の問題でした。

パラメータ( 'namespaces_xxx_int_name')

1を解決する

ステップ。パラメータファイルからパラメータを削除する(デフォルトパラメータを使用)

2.関数を追加します。

3.エラーの原因となるすべての関連箇所を確認します。

0

することができますあなたは、デプロイされたリソースまたはテンプレートの既存の外部とので、私の元の発言をdependsOnを使用することはできません

dependsOn: [ 
    "[parameters('namespaces_xxx_int_name')]", 
    "[parameters('topics_basket_item_changed_topic_name')]" 
] 

:そのは、同じテンプレートに展開されている場合だけリソース の名前を使用します意味がありません。

+0

resourceIdではなく名前だけを使用する場合、リソース名は一意でなければならないことに留意してください(通常はtrueですが、そうではありません)。異なるタイプのリソースに必要です)。 –

+0

ちょっと、実際に試したことはありません。同じテンプレートに同じ名前のリソースが2つあるとどうなりますか? 'dependsOn'はその場合に解析されませんか? – 4c74356b41

+1

うん、あなたはエラーが発生します... –

関連する問題