Azure devops Azure DevOps Terraform Init-远程状态-无法获取现有工作区:容器。客户端#ListBlobs:发送请求失败:StatusCode=0

Azure devops Azure DevOps Terraform Init-远程状态-无法获取现有工作区:容器。客户端#ListBlobs:发送请求失败:StatusCode=0,azure-devops,azure-storage-blobs,terraform-provider-azure,Azure Devops,Azure Storage Blobs,Terraform Provider Azure,正是在体验terraform的时候,我遵循本文中的文档,将terraform文件放入我与Azure DevOps的发布管道中。在初始化地形之前,一切都运转良好。它失败,并显示以下错误消息: 存储帐户本身已设置,并且该帐户的密钥也根据文档成功地保存在环境变量中 我在Azure DevOps发布管道中为terraform init提供的YAML是: 用于后端服务的terraform脚本是: 变量作为环境变量存储在发布管道中,有一个replace-token任务将\uuu替换为空字符串: He

正是在体验terraform的时候,我遵循本文中的文档,将terraform文件放入我与Azure DevOps的发布管道中。在初始化地形之前,一切都运转良好。它失败,并显示以下错误消息:

存储帐户本身已设置,并且该帐户的密钥也根据文档成功地保存在环境变量中

我在Azure DevOps发布管道中为terraform init提供的YAML是:

用于
后端服务的
terraform
脚本是:

变量作为环境变量存储在发布管道中,有一个
replace-token
任务将
\uuu
替换为空字符串:

Her是创建资源组和存储帐户的管道中的步骤:

最后,在ENV vars中存储存储密钥的PS脚本:

另外,我不明白为什么错误消息中的
get http
会将
env
附加到
terraform.tformstate

我已经想不出为什么它会出现这种异常,以及它到底在期待什么了


我一直在谷歌上搜索,但至今未能解决这个问题。感谢您在这方面的帮助/想法。

看起来您将变量的storageaccount拼错了。因此,该值不会被替换。你有索特拉伯爵。t和o交换。

共享您的Terraform脚本,您在哪里部署Terraform脚本?德沃斯?给出YAML文件。将它们添加到问题中。是的,我只是根据问题中的文档链接使用Azure DevOps发布管道。我没有看到存储名称和访问密钥的变量,您在哪里定义它们?它们在发布管道的env vars中,有一个powershell脚本创建存储帐户,读取密钥,并坚持关键,在发布过程中,我这边的一切都很好。您能否检查init任务中的
workingDirectory
的值是否正确,并确保键值确实正确。OMG-您非常正确。这解决了问题。谢谢克里斯蒂安,哈!这也是我发现问题所需要的灵感。