Azure devops Terraform和Azure DevOps管道

Azure devops Terraform和Azure DevOps管道,azure-devops,terraform,terraform-provider-azure,Azure Devops,Terraform,Terraform Provider Azure,我正在为我的组织使用一个通用的terraform模块,它位于GitHub中。所以,我通过如下所示的地形代码访问它 module "resourcegroup" { source = "git::https://github.com/hashicorp/example.git//azure-modules/resourcegroup" } 我通过VS代码执行Terraform开发,因此通过VS代码登录到GitHub,并能够部署到Azure。现在,因为我

我正在为我的组织使用一个通用的terraform模块,它位于GitHub中。所以,我通过如下所示的地形代码访问它

module "resourcegroup" {
  source = "git::https://github.com/hashicorp/example.git//azure-modules/resourcegroup"
}
我通过VS代码执行Terraform开发,因此通过VS代码登录到GitHub,并能够部署到Azure。现在,因为我创建的terraform文件位于Azure DevOps中的一个repo中。我正在创建一个构建和发布管道来自动化地形任务

我的生成管道包含以下内容:

  • 我的资源是Azure Repos Git
  • 有一个复制文件到:任务和一个发布工件:删除任务
发布管道包含使用Microsoft Devlab扩展创建的地形任务:

  • 安装地形任务
  • Terraform Init任务,该任务从构建管道放置配置目录的文件夹中读取配置目录
  • 然后是地形规划和应用任务
我还通过进入项目设置>服务连接>其他Git>创建了服务连接,提供了模块所在GitHub的URL、用户名和令牌(通过GitHub创建),并启用了所有管道使用此连接的复选框

我遇到的问题是:

  • 由于terraform文件指向GitHub以构建模块,因此发布管道挂起在task-terraform Init中
  • 错误消息是:正在等待来自代理的控制台输出。。。(-input=false也在Terraform Init任务中的其他命令参数下提供,但它没有解决问题)
  • 在发布管道中没有提及服务连接的选项
因为我需要访问GitHub来创建terraform模块,还需要在terraform Init中使用AzureRM后端配置下的Azure订阅。我如何让管道工作

错误消息是:正在等待来自代理的控制台输出

这是正常的行为。通常,管道完工后会弹出日志。如果要查看详细日志,请在管道变量中将“system.debug”设置为true,然后重新运行管道

这是您可以参考的github上的