标签: azure-pipelines

如何使用 Azure DevOps REST API 创建新的构建管道?

我正在尝试以编程方式创建新的构建管道。我正在为此操作寻找 Azure DevOps REST API。我没有得到使用 REST API 创建管道的正确示例。

请指教。

rest azure-devops azure-pipelines azure-devops-rest-api

3
推荐指数
1
解决办法
4794
查看次数

关闭拉取请求而不将其合并到 Azure DevOps 中的上游分支

是否可以关闭拉取请求而不将其合并到上游分支?

我正在使用 gitflow,所以我希望启动功能分支的开发人员完成功能分支,而不是审查者合并功能分支。

看起来这个工具在github 中可用。

azure-devops azure-pipelines

3
推荐指数
2
解决办法
2748
查看次数

我如何在 azure 管道中通过分支 AND 标签触发?

我想创建一个 azure 管道,这样当我推送到分支(开发)标记(测试*)时,管道将被触发。但是,当我推送到没有标签的分支(开发)时,管道会被触发,这表明在推送到(开发)分支(测试*)标签时触发器正在执行。

例子:

trigger:
  branches:
    include:
      - develop
      - refs/tags/{test*}
Run Code Online (Sandbox Code Playgroud)

仅当推送到(开发)分支有对(测试*)标签的引用时,如何才能触发触发器?

azure-devops azure-pipelines

3
推荐指数
2
解决办法
1961
查看次数

添加环境到管道卡在“连接到服务器”

我正在尝试向 azure Devops 管道中的环境选项卡添加资源,但 Powershell 卡在“连接到服务器”中。我错过了什么吗?

当我单击“添加资源”并且资源是 Windows 虚拟机时,AzureDevOps 会生成 powershell。

在此处输入图片说明

environment azure-devops azure-pipelines

3
推荐指数
1
解决办法
408
查看次数

Azure Devops:如何使用 if 语句设置组变量

我正在尝试根据管道中存在的一个变量设置变量组。yaml 看起来像这样:

在此处输入图片说明

但是当我运行管道时出现以下错误:

在此处输入图片说明

如果我删除“- group : QA”“- group : PROD”,管道运行没有任何问题。我究竟做错了什么?

yaml azure azure-devops azure-pipelines

3
推荐指数
2
解决办法
2992
查看次数

在 azure devops 中在管道作业级别拥有 .env 文件的最佳方法是什么

您能否建议让 .env 文件可用于我的 azure devops 管道的最佳方法。(注意我们忽略了要推送到 Git 存储库的 .env 文件)

我的 Node.js 实用程序代码库位于 azure-devops Git 中。

我有一个 azure 构建管道(YML 版本),它是一个 CI 管道(只进行编译和测试)。

单元测试使用需要 API 秘密令牌才能运行的 API 调用。

这些令牌存储在 .env 文件中(我使用了 Node.js 的 dotenv 包)但我们不会将 .env 文件推送到 Git。

那么我应该如何使 .env 文件可用于我的 CI 管道。

node.js azure-devops azure-pipelines

3
推荐指数
1
解决办法
3262
查看次数

在 Azure Devops Build Pipeline YAML 中组合变量

我在 Azure Devops Build 管道 YAML 文件中创建了一个 docker build 和 push 任务,我想用两个变量的组合来标记图像,项目名称和内部版本号,所以标记将是 service_22 ( service 是项目,22 是内部版本号)。

如何将两个变量连接在一起,例如 $(variable)_$(variable2)

- task: Docker@2
  inputs:
    containerRegistry: 'Azure'
    repository: 'jdmcontainers'
    command: 'buildAndPush'
    Dockerfile: 'Dockerfile'
    tags: |
      $(Build.BuildId)
      $(imageName)
Run Code Online (Sandbox Code Playgroud)

这是当前文件,标签作为单独的单独标签添加。

docker-compose azure-devops azure-pipelines

3
推荐指数
2
解决办法
2693
查看次数

AzureDevops 管道使用 terraform 和 local-exec az 命令因服务主体失败

由于 terraform azurerm 提供程序缺少对 azure webapp 访问限制的支持(请参阅 github 问题)。我们使用null_resourcewithlocal-exec来应用访问限制:


  provisioner "local-exec" {
    command = <<COMMAND
      az webapp config access-restriction add --subscription ${self.triggers.subscription_id} --resource-group ${self.triggers.resource_group} \
        --name ${self.triggers.web_app_name} --rule-name 'allow application gateway' --action Allow --vnet-name ${self.triggers.vnet_name} \
        --subnet ${self.triggers.subnet_name} --priority 100
    COMMAND
  }
Run Code Online (Sandbox Code Playgroud)

我们的 terraform 代码稍后由 Azure DevOps 管道运行,该管道使用服务连接(使用服务主体)向 Azure 进行身份验证。以下任务正在尝试应用 terraform 资源:


  provisioner "local-exec" {
    command = <<COMMAND
      az webapp config access-restriction add --subscription ${self.triggers.subscription_id} --resource-group ${self.triggers.resource_group} \
        --name ${self.triggers.web_app_name} --rule-name 'allow application gateway' …
Run Code Online (Sandbox Code Playgroud)

azure-cli terraform azure-devops azure-pipelines

3
推荐指数
1
解决办法
3284
查看次数

Nuget 还原不适用于 Azure Devops 中的工件源

NuGet 还原从同一组织中的另一个项目的提要失败 404。

nuget restore从管道中使用时,找不到不同项目中的提要。

nuget .net-core azure-devops azure-pipelines

3
推荐指数
1
解决办法
1114
查看次数

使用 YAML 配置时,清理 Azure DevOps Pipeline 设置中的所有构建目录不起作用

我使用 Azure DevOps 有一段时间了,并且在制作 Build Pipeline 时我总是使用经典编辑器 GUI。现在我正在尝试使用 YAML 创建新管道。一切顺利,构建成功。但是,与使用经典编辑器的管道相比,我注意到结帐任务中的不同行为。在两个管道中,“获取源”选项卡中使用的设置是相同的(请参见下面的屏幕截图)

在此处输入图片说明

在经典编辑器管道的情况下,签出任务删除并重新创建$(Agent.BuildDirectory).这将导致为每个构建初始化一个新的本地 Git 存储库。但是,对于 YAML 管道,结帐任务仅执行 agit clean -ffdx并仅删除源目录。如何解决 YAML 管道的这个问题?

YAML 管道日志:

在此处输入图片说明

经典编辑器管道日志:

在此处输入图片说明

git devops azure-devops azure-pipelines azure-yaml-pipelines

3
推荐指数
1
解决办法
2819
查看次数