gpt4 book ai didi

azure-devops - Azure DevOps 管道可以同时具有模板化和非模板化作业吗?

转载 作者:行者123 更新时间:2023-12-02 18:37:57 25 4
gpt4 key购买 nike

我有一个运行一系列阶段的管道 yaml 文件,每个阶段运行一个已模板化的部署作业。代码本身非常简单:

模板.yaml

jobs:
- deployment: foo
...

管道.yaml

stages:
- stage: Uno
displayName: Numero_uno
jobs:
- job: Foo
steps:
- template: template.yaml
parameters:
stuff: things
- stage: Dos
displayName: Numero_dos
jobs:
- job: Foo
steps:
- template: template.yaml
parameters:
stuff: things

我发现我的一个阶段需要在其中运行一些额外的脚本,所以我想向这个特定阶段添加一些额外的工作:

- stage: Cuarenta_y_dos
displayName: Numero_cuarenta_y_dos
jobs:
- job: prep
steps:
- task: ...
- job: Foo
steps:
- template: template.yaml
parameters:
stuff: things
- job: unprep
steps:
- task: ...

这样做会破坏整个管道,因为我的模板是围绕可重复使用的作业构建的,它会立即引发有关“意外值‘作业’”的错误。

我明白为什么会这样,但我不确定如何解决它。我想做的事有可能吗?

最佳答案

想通了。我的问题有两个方面:

  1. 我有工作级别的模板,而不是步骤级别
  2. 我在模板化步骤的“工作:”条目下指定了“- 工作:”(只有一个工作)。

原始代码,无效:

stages:
- stage: Uno
displayName: Numero_uno
jobs:
- job: Foo
steps:
- template: template.yaml
parameters:
stuff: things

- stage: Cuarenta_y_dos
displayName: Numero_cuarenta_y_dos
jobs:
- job: prep
steps:
- task: ...
- job: Foo
steps:
- template: template.yaml
parameters:
stuff: things
- job: unprep
steps:
- task: ...

固定代码:

stages:
- stage: Uno
displayName: Numero_uno
jobs:
- template: template.yaml
parameters:
stuff: things

- stage: Cuarenta_y_dos
displayName: Numero_cuarenta_y_dos
jobs:
- job: prep
steps:
- task: ...
- template: template.yaml
parameters:
stuff: things
- job: unprep
steps:
- task: ...

这是次要的,但它很重要!

关于azure-devops - Azure DevOps 管道可以同时具有模板化和非模板化作业吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68479441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com