首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在主题分支中创建了Azure管道yaml文件,我可以从主题分支运行它吗?

在主题分支中创建了Azure管道yaml文件,我可以从主题分支运行它吗?
EN

Stack Overflow用户
提问于 2020-10-29 03:46:08
回答 3查看 1.4K关注 0票数 2

这可能是一个愚蠢的问题,但我正在编写一个将处理一些自动化测试的流水线。我正在一个feature分支中开发yaml管道。有没有办法在Azure Dev ops中运行这个管道,或者是在每次迭代时提交一个pull请求并合并到master中的唯一方法?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-10-29 04:18:16

您可以在所需的任何分支上定义管道,然后如果选择从Existing Azure Pipelines YAML file创建管道,则可以选择您的分支并选择此文件:

另一种选择是在主构建中添加条件,以便仅在应用了某些命名约定的情况下为功能分支运行特定阶段:

代码语言:javascript
复制
variables:
  isFeature: $[contains(variables['Build.SourceBranch'], 'feature')]

stages:
- stage: A
  jobs:
  - job: A1
    steps:
      - script: echo Hello Stage A!

- stage: B
  condition: and(succeeded(), eq(variables.isFeature, true))
  jobs:
  - job: B1
    steps:
      - script: echo Hello Stage B!
      - script: echo $(isMain)
票数 3
EN

Stack Overflow用户

发布于 2020-10-29 04:00:14

运行DevOps管道时,请选择要为其执行管道的分支。该分支中的azure-pipelines.yaml文件将在默认情况下执行。因此,在上面的场景中,如果您在主分支中有一个azure-pipelines.yaml文件,而在feature分支中有一个不同版本的azure-pipelines.yaml,那么执行的版本将由您为哪个分支运行管道来确定。

票数 2
EN

Stack Overflow用户

发布于 2020-10-29 04:15:51

您可以触发从任何分支运行管道,而不仅仅是主分支。您可以在trigger字段下指定您感兴趣的分支:

代码语言:javascript
复制
trigger:
  branches:
    include:
    - master
    - feature/*
    - releases/*
    exclude:
    - releases/old*

如果你看一下这段代码,上面的代码将触发分支主节点的构建管道,你的feature文件夹中的任何分支(例如: feature/yo-currentFeature)以及你的releases文件夹下的任何分支。但是,如果对版本/旧分支进行了更改,则不会运行bulid管道。有关触发器的更多信息,请参阅:https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/azure-repos-git?view=azure-devops&tabs=yaml#ci-triggers

https://docs.microsoft.com/en-us/azure/devops/pipelines/repos/azure-repos-git?view=azure-devops&tabs=yaml#pr-triggers

在触发器:分支下添加特性分支后,您对特性分支所做的任何提交或PR都将自动触发构建管道

(PS :不言而喻,但确保您的功能分支也包含您的管道yml文件)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64580272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档