【问题标题】:How to add package description to Nuget packed with DotNetCoreCLI如何将包描述添加到使用 DotNetCoreCLI 打包的 Nuget
【发布时间】:2020-10-12 10:18:31
【问题描述】:

我有以下 Azure DevOps 任务,它会在推送到工件之前创建一个 nuget pack

- task: DotNetCoreCLI@2
    displayName: 'Pack'
    inputs:
      command: 'pack'
      nobuild: false
      packDirectory: '$(Build.ArtifactStagingDirectory)/$(directory)'

如何为 nuget 包添加包说明?

【问题讨论】:

    标签: azure-devops nuget azure-pipelines nuget-package


    【解决方案1】:

    您可以在任务中添加buildProperties: '$description$=mydescription'

    - task: DotNetCoreCLI@2
        displayName: 'Pack'
        inputs:
          command: 'pack'
          nobuild: false
          packDirectory: '$(Build.ArtifactStagingDirectory)/$(directory)'
          buildProperties: 'description=test'
    

    What is buildProperties?

    指定token = value 对的列表,用分号分隔, 将替换 .nuspec 文件中每次出现的 $token$ 与给定的值。值可以是引号中的字符串

    【讨论】:

    • 谢谢,我不得不删除像“description=test”这样的美元符号,可能是因为我使用的是 Azure Devops 的本地版本。
    【解决方案2】:

    你也可以使用nuspec文件:

    这是 csproj 文件:

    <Project Sdk="Microsoft.NET.Sdk">
    
      <PropertyGroup>
        <TargetFramework>netstandard2.0</TargetFramework>
        <NuspecFile>package.nuspec</NuspecFile>
      </PropertyGroup>
    
    </Project>
    

    这是 nuspec 文件

    <?xml version="1.0" encoding="utf-8"?>
    <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
        <metadata>
            <!-- Required elements-->
            <id>UniqeName</id>
            <version>1.1.2</version>
            <description>UniqueName</description>
            <authors>Krzysztof Madej</authors>
    
            <!-- Optional elements -->
            <!-- ... -->
        </metadata>
        <files>
            <file src="bin\Release\netstandard2.0\*" target="lib" />
        </files>
    </package>
    

    这是一个构建

    - task: DotNetCoreCLI@2
      displayName: "dotnet pack"
      inputs:
        command: 'pack'
        arguments: --configuration $(buildConfiguration) -p:PackageID=my_id -p:PackageVersion=2.1.0
        packagesToPack: '$(System.DefaultWorkingDirectory)/stackoverflow/08-nuget-packager/SampleApp.csproj'
        versioningScheme: 'off'
        outputDir: '$(Build.ArtifactStagingDirectory)'
    

    【讨论】:

      猜你喜欢
      • 2011-05-05
      • 2012-07-11
      • 2022-01-12
      • 2016-11-14
      • 2017-08-29
      • 2016-12-21
      • 1970-01-01
      • 1970-01-01
      • 2019-11-22
      相关资源
      最近更新 更多