【Azure Service Bus】创建 ServiceBus 的Terraform脚本报错GetAuthorizationRule: Invalid input

问题描述

在使用Terraform部署Service Bus时候,遇见了如下报错:

Error: Error making Read request on Azure ServiceBus Topic Authorization Rule : servicebus.TopicsClient#GetAuthorizationRule: Invalid input: autorest/validation: validation failed: parameter=authorizationRuleName constraint=MinLength value="" details: value length must be greater than or equal to 1
 

问题解答

在查看Teffaform的日志后,定位到问题发生的原因是 authorizationrules 这个关键字出现了大小写问题。

出问题的部署使用的小写authorizationrules, 而请求真正使用的参数是authorizationRules.

其实,如果查看Azure的官方文档,它标明了Azure资源是不区分大小写的,也就是说:不论大写/小写,都是支持的。

(Source: https://learn.microsoft.com/zh-cn/azure/azure-resource-manager/management/resource-name-rules)

为了解决Terraform发布Service Bus问题,最后通过升级 azure provider 到最新版本来解决此问题。

为了最佳的体验,需要确保使用最新 Terraform azurerm 组件!

 

posted @ 2024-09-10 19:49  路边两盏灯  阅读(11)  评论(1编辑  收藏  举报