【问题标题】:Nuget package Version Issue for YAMLYAML 的 Nuget 包版本问题
【发布时间】:2021-07-31 09:28:49
【问题描述】:

我正在尝试让放置文件夹中生成的 Nuget 文件具有这样的名称 - Project.1.0.1-prerelease-2021-05-10.nupkg。但是这个 YAML 在构建管道中的输出是 Project.0.1.0.nupkg。这里有什么不正确的?我尝试了太多组合,但它一直在放置文件夹中生成它。

csproj 文件确实有一个像这样的版本前缀字段

YAML

# ASP.NET Core
# Build and test ASP.NET Core projects targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core

name: $(BuildDefinitionName)_$(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)

trigger:
- main

pool:
  vmImage: windows-latest

variables:
  buildConfiguration: 'Release'

steps:

- task: DotNetCoreCLI@2
  displayName: 'Restore Dependencies'
  inputs:
    command: 'restore'
    projects: '**/*.csproj'
    vstsFeed: '9fc2d633-cc8b-49be-a58d-abb9adf6a2c9'
    
- task: DotNetCoreCLI@2
  displayName: 'Debug Build'
  inputs:
    command: 'build'
    projects: '**/*.csproj'
    configuration: debug
    
- task: DotNetCoreCLI@2
  displayName: 'Pack Pre Release'
  inputs:
    command: 'pack'
    packagesToPack: '**/Project.csproj'
    includesymbols: true
    includesource: true
    packDirectory: '$(build.artifactstagingdirectory)/release'
    arguments: '--configuration debug'
    versioningScheme: byPrereleaseNumber
    majorVersion: 1
    minorVersion: 0
    patchVersion: 1
    
- task: CopyFiles@2
  displayName: 'Copy Artifacts'
  inputs:
    Contents: '**\*.nupkg'
    TargetFolder: '$(build.artifactstagingdirectory)'

- task: PublishBuildArtifacts@1
  displayName: 'Publish artifacts'
  inputs:
    PathtoPublish: '$(build.artifactstagingdirectory)'

【问题讨论】:

    标签: azure-devops yaml nuget azure-pipelines


    【解决方案1】:

    好的,通过更改它可以正常工作

    - task: DotNetCoreCLI@2
      displayName: 'Pack Pre Release'
      inputs:
        command: 'pack'
        packagesToPack: '**/Project.csproj'
        includesymbols: true
        includesource: true
        packDirectory: '$(build.artifactstagingdirectory)/release'
        arguments: '--configuration debug'
        versioningScheme: byPrereleaseNumber
        majorVersion: 1
        minorVersion: 0
        patchVersion: 1
    

    到这里

    - task: DotNetCoreCLI@2
      displayName: 'Pack pre-release package'
      inputs:
        command: 'custom'
        projects: '**/Project.csproj'
        custom: 'pack'
        arguments: '--version-suffix "pre-release-"$(Build.BuildNumber) --output $(build.artifactstagingdirectory)/debug'
    

    同样在顶部,我将 name 变量更改为

    name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)
    

    这给了我这个包裹。

    【讨论】:

    • 太棒了!你可以接受这个答案。这将对其他用户有所帮助。
    猜你喜欢
    • 1970-01-01
    • 2016-06-20
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多