在 Azure DevOps 中,与相同的 YAML 管道模板相比,经典编辑器模板中的任务缺失

In Azure DevOps, Task inside Classic Editor Template is missing compared to the same YAML Pipeline template

我有两种方法在 Azure DevOps 上构建管道,使用 YAML 管道模板或使用经典编辑器中预设的任务(也可以转换为任务组)。 如果我 select 以这些方式之一使用相同的模板,经典编辑器中的相同任务可能会从其对应的 YAML 管道模板中丢失。

我select用这两种方式编辑了 .NET Desktop。 https://i.imgur.com/2fGcZ14.png

在经典编辑器中,我可以看到其中 2 个发布任务,如下所示。 https://i.imgur.com/yxYxD44.png

使用 YAML 管道时,上面看到的 2 个任务会丢失。

# .NET Desktop
# Build and run tests for .NET Desktop or Windows classic desktop solutions.
# Add steps that publish symbols, save build artifacts, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/windows/dot-net

trigger:
- master

pool:
  vmImage: 'windows-latest'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

- task: VSTest@2
  inputs:
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

我不明白为什么会这样。感谢在此方面的一些帮助或指点,在此先感谢。

这两个任务都没有丢失,但您可能需要手动添加它们。

发布工件不再是一项独立的任务,它已成为 YAML 管道核心功能的一部分,因此它是一个名为 publish

的本地步骤
steps:
- publish: output/files # path to files/directory containing files you want to publish
  artifact: myartifact # Name of the artifact

至于复制文件,那还是个任务,as documented here

The docs for YAML pipelines are pretty good IMO

还有一个complete reference for the all the built-in tasks