我试图弄清楚如何动态创建依赖项并根据条件运行作业。
这是我的管道的结构:
主要.yaml:
stages:
- stage: build
jobs:
- template: build.yaml
- stage: deployDev
dependsOn: build
jobs:
- template: deployApp1.yaml
parameters:
environmentName: Dev
- template: deployApp2.yaml
parameters:
environmentName: Dev
- stage: deployQA
dependsOn: deployDev
jobs:
- template: promote.yaml
parameters:
environmentName: QA
- template: deployApp1.yaml
parameters:
environmentName: QA
- template: deployApp2.yaml
parameters:
environmentName: QA
promote.yaml
jobs:
- job: copy
steps:
- task:
deployApp1.yaml
jobs:
-job: deployApp1
steps:
- task:
deployApp2.yaml
jobs:
- job: deployApp2
steps:
- task:
在 deployQA 中,我有一个单独的作业来复制构建工件,如果没有 deployQA 中的复制步骤,接下来的两个作业(deployApp1 和 deployApp2)将失败。
我想创建一个对job: copy for job: deployApp1的条件依赖,这样如果我部署到没有这种依赖关系的 Dev,它应该能够跳过。我已经尝试了不同帖子的不同解决方案,但没有任何运气。
我知道我是否可以为副本添加额外的阶段来解决我的问题,但我希望将副本作为 QA 阶段的一部分。