【发布时间】:2021-08-27 12:49:57
【问题描述】:
我有一个作业 A、B、C、D... 的列表,无论前一个作业是否成功,它们都会运行。
最后一个是工件发布,将由发布管道使用。我想不运行它如果以前的作业都没有成功。
我需要部署任何不会失败的服务(因此我需要传递失败的服务创建),但如果全部失败,则阻止自动启动链接的发布管道。
这是 Azure 给出的 YAML 代码
pool:
name: Default
demands:
- msbuild
- visualstudio
steps:
- task: VSBuild@1
displayName: 'Generate Solution'
inputs:
solution: LisaMES.sln
platform: '$(PlatformName)'
configuration: '$(ConfigurationName)'
- task: ArchiveFiles@2
displayName: 'Create Service A'
inputs:
rootFolderOrFile: '$(ServiceName)\bin\$(ConfigurationName)'
includeRootFolder: false
archiveFile: 'Bin_Services/$(ServiceName)_$(ConfigurationName).zip'
condition: succeededOrFailed()
- task: ArchiveFiles@2
displayName: 'Create Service B'
inputs:
rootFolderOrFile: '$(ServiceName)\bin\$(ConfigurationName)'
includeRootFolder: false
archiveFile: 'Bin_Services/$(ServiceName)_$(ConfigurationName).zip'
condition: succeededOrFailed()
... C D E F like this
- task: PublishPipelineArtifact@0
displayName: 'Publish Pipeline Artifact'
inputs:
artifactName: Services
targetPath: 'Bin_Services'
condition: succeededOrFailed()
【问题讨论】:
-
你能提供你的 YAML 代码吗?我假设这些作业已经设置为并行运行?
-
否,作业没有并行运行。我可以提供 Azure 生成的 YAML 代码,但我无法编辑它
标签: yaml azure-pipelines jobs