azure-devops - 在 Azure DevOps 构建管道期间创建 json 文件

标签 azure-devops azure-pipelines

我有一个运行 Cypress 测试的 Azure DevOps 构建管道。在那个 Cypress 测试中,我们有一个使用电子邮件和密码登录的测试用户。在我的本地系统上,我的密码在 cypress.env.json 中。文件。
在 Azure 构建管道上,我收到密码为 undefined 的消息。这是有道理的,因为我们把 cypress.env.json .gitignore 中的文件不要将其暴露给 repo。
我创建了一个 Azure 变量来表示密码:$(ACCOUNT_PASSWORD)所以我想我需要创建 cypress.env.json生成管道中的文件并为其使用 Azure 变量,但我不知道如何在生成步骤中创建文件。
我有这个任务:

- task: CmdLine@2
  displayName: 'run Cypress'
  inputs:
    script: |
      npm run ci
所以我需要在这之前添加一个任务来创建 cypress.env.json带有代表密码的变量的文件:
{
  "ACCOUNT_PASSWORD": $(ACCOUNT_PASSWORD)
}

最佳答案

您可以添加一个简单的 PS 脚本来创建文件:

- task: PowerShell@2
  inputs:
    targetType: 'inline'
    script: |
      $json = '{
       "ACCOUNT_PASSWORD": $(ACCOUNT_PASSWORD)
      }'
        
      $json | Out-File cypress.env.json
    workingDirectory: '$(Build.SourcesDirecory)'
    pwsh: true # For Linux
workingDirectory设置您希望创建文件的路径。

关于azure-devops - 在 Azure DevOps 构建管道期间创建 json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68542830/

相关文章:

azure-devops - 在Windows中的Azure管道中设置PATH

Azure Devops - 使用脚本访问拉取请求中的构建验证管道的数量

azure - 如何在部署时发送包含在 Azure DevOps 管道上完成的任务的电子邮件?

Azure devops VSTS 现在不在我的主机上安装 awscli,以前可以工作

python - 使用 Azure Pipelines 上传 python 包时出错

c# - 如何使用 c# 或 msbuild 显示当前构建?

c# - Azure DevOps Pipeline - dotnet restore 包内容哈希验证失败

azure - 使用 Azure DevOps 启用 Azure Key Vault 防火墙 - 当 KV 位于不同的订阅中时,最好的方法是什么?

yaml - 如何在多行的 `script` 步骤中中断单个命令

templates - Azure DevOps 模板管道函数