Yaml 如何删除Terraform双引号?

Yaml 如何删除Terraform双引号?,yaml,terraform,azure-pipelines,Yaml,Terraform,Azure Pipelines,我使用terraform创建了一个YML管道。 它使用脚本任务并在输出中返回web应用程序名称 steps: - script: | [......] terraform apply -input=false -auto-approve # Get the App Service name for the dev environment. WebAppNameDev=$(terraform output appservice_name_dev)

我使用terraform创建了一个YML管道。 它使用脚本任务并在输出中返回web应用程序名称

steps:
- script: | 
    [......] 
    terraform apply -input=false -auto-approve
    
    # Get the App Service name for the dev environment.
    WebAppNameDev=$(terraform output appservice_name_dev)
    
    # Write the WebAppNameDev variable to the pipeline.
    echo "##vso[task.setvariable variable=WebAppNameDev;isOutput=true]$WebAppNameDev"
  name: 'RunTerraform'
该任务工作正常,但当我部署webapp时,它会崩溃,因为变量
$WebAppNameDev
有双引号

      - task: AzureWebApp@1
        displayName: 'Azure App Service Deploy: website'
        inputs:
          azureSubscription: 'MySubscription'
          appName: $(WebAppNameDev)
          package: '$(Pipeline.Workspace)/drop/*.zip'
错误如下所示:

 Got service connection details for Azure App Service:'"spikeapp-dev-6128"'
 ##[error]Error: Resource '"spikeapp-dev-6128"' doesn't exist. Resource should exist before deployment.
如何删除双引号或修复terraform输出?

我通过向terraform输出添加
--raw
参数来解决这个问题

WebAppNameDev=$(terraform output --raw appservice_name_dev)

参考

在自动化脚本中使用环境变量时,建议在自动化中设置环境变量
TF\u。我不确定这是否解决了问题,但值得一试。谢谢。我试过了,但似乎没有什么变化!谢谢你在这里分享你的解决方案,你可以,这样它可以帮助其他社区成员谁得到同样的问题,我们可以存档这个线程,谢谢。