.net core 使用dotnet pack的多级管道在版本控制方面失败

.net core 使用dotnet pack的多级管道在版本控制方面失败,.net-core,nuget,nuget-package,.net Core,Nuget,Nuget Package,我正在尝试使用一个管道来构建和测试我的代码,并在另一个阶段打包和推送nuget包 name: $(SourceBranchName)-$(Date:yyyyMMdd)$(Rev:.r) trigger: branches: include: - 'master' paths: exclude: - deploy/* stages: # Build, test and package for deployment - templat

我正在尝试使用一个管道来构建和测试我的代码,并在另一个阶段打包和推送nuget包

name: $(SourceBranchName)-$(Date:yyyyMMdd)$(Rev:.r)

trigger:
  branches:
    include: 
      - 'master'
  paths:
    exclude:
      - deploy/*
      
stages:
# Build, test and package for deployment
- template: deploy/build/stage.yaml
- template: deploy/build/nuget.yaml
管道在打包nuget文件的最后阶段失败

##[错误]在以下环境变量中找不到版本号数据:BUILD\u BUILDNUMBER。变量的值应包含具有以下格式的子字符串:X.Y.Z或X.Y.Z.a,其中a、X、Y和Z是正整数

我知道,在外部yaml文件中,“名称”是底层版本控制方案的一部分,这是错误的一部分。但是我可以在我的nuget.yaml中覆盖外部的“name”属性吗

在nuget.yaml文件中,我正在这样做(很抱歉格式化)

当nuget.yaml文件不是多级管道的一部分时,它本身运行良好

variables:
    buildConfiguration: 'Release'
    majorMinorVersion: 1.2
    # semanticVersion counter is automatically incremented by one in each execution of pipeline
    # second parameter is seed value to reset to every time the referenced majorMinorVersion is changed
    semanticVersion: $[counter(variables['majorMinorVersion'], 0)] 

    - task: DotNetCoreCLI@2
        displayName: 'dotnet pack'
        inputs:
          command: pack
          projects: src/**/*.csproj
          versioningScheme: byBuildNumber