azure - 如何在json文件中引用环境变量

标签 azure azure-devops

我的发布管道中有一个文件创建器任务,它创建 cypress.json文件:

{
  "integrationFolder": "D:/a/r1/a/_ClientWeb-Build-CI/ShellArtifact/tests/integration/",
  "baseUrl": $env:featureReleaseUrl
}

正如你所看到的,我引用了一个环境变量 featureReleaseUrl .

Azure Powershell创建 cypress.json 之前的任务文件我输出 $env:featureReleaseUrl变量:

write-host $env:featureReleaseUrl

哪些输出:

http://exampleofaurl.azurewebsites.net

因此变量设置正确。

当我阅读我创建的cypress.json的内容时我看到的文件:

{
  "integrationFolder": "D:/a/r1/a/_ClientWeb-Build-CI/ShellArtifact/tests/integration/",
  "baseUrl": $env:featureReleaseUrl
}

当我运行 Cypress 时,我得到:

SyntaxError: D:\a\r1\a\_ClientWeb-Build-CI\ShellArtifact\tests\integration\cypress.json: Unexpected token $ in JSON at position 104

所以看起来就像我创建 cypress.json 时一样文件需要 $env:featureReleaseUrl作为文字字符串而不是变量的实际值。

有什么建议可以让我在 Azure dev-ops 中创建文件时引用变量吗?

最佳答案

使用 Azure 时最困难的事情之一是何时使用哪种变量。

我为解决问题所做的并不是在创建 json 文件时直接引用 $env:featureReleaseUrl:

{
  "integrationFolder": "D:/a/r1/a/_ClientWeb-Build-CI/ShellArtifact/tests/integration/",
  "baseUrl": "$(featureReleaseUrl)"
}

此变量$(featureReleaseUrl)指的是:

enter image description here

这可能不是最快的解决方案,但它确实有效。

关于azure - 如何在json文件中引用环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56639697/

相关文章:

python - 适用于 Python 的 Azure ADAL - 面临 acquire_token_with_username_password 方法的问题

azure - 如何构建代表 Azure 数据湖(第 2 代)的 Docker 镜像?

c# - TFS 构建 - C# 7.0 System.ValueType

azure - 如何在自托管 Windows 代理上从 Azure DevOps 管道运行 Azure CLI 任务?

mysql - #1045-在MySQL Azure中用户..的访问被拒绝

sql-server - Azure SQL 数据库 - 对 Azure VM SQL 实例的弹性查询 - SSL 错误

reactjs - 在reactjs应用程序中获取网络请求失败

远程 VSO git 存储库上的 Git 清理/垃圾收集

azure-devops - 无法将 Azure SQL 与 Azure DevOps Server 2019 一起使用 -(Azure 政府)

azure-devops - 扩展验证错误在贡献xxx中找不到task.json文件