Go to file
qxa a80e886c43 增加说明文档 2025-11-07 09:13:24 +08:00
.gitattributes 6.0 2025-03-25 18:44:42 +08:00
.gitignore 6.0 2025-03-25 18:44:42 +08:00
README.md 增加说明文档 2025-11-07 09:13:24 +08:00
action.yaml 6.0 2025-03-25 18:44:42 +08:00

README.md

Release-NuGet Action

一个用于自动发布 NuGet 包到指定源的 GitHub Action。

功能特性

  • 支持发布多个项目到指定的 NuGet 源
  • 可配置 .NET SDK 版本
  • 支持自定义构建配置
  • 提供预发布版本控制选项
  • 包含详细的日志输出
  • 自动跳过重复发布
  • 错误处理和项目检查

输入参数

参数 必需 默认值 描述
source - NuGet 包发布地址
key - NuGet 发布凭证密钥
projects - 要发布的项目名称列表,使用逗号分隔
nuget_dir nuget NuGet 包缓存目录,用于缓存依赖
dotnet_version 6.0 .NET SDK 版本

使用示例

基本用法

name: 发布 NuGet 包

on:
  push:
    tags:
      - 'v*.*.*'

jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      
      - name: 发布到 NuGet.org
        uses: actions/release-nuget@6.0
        with:
          source: https://api.nuget.org/v3/index.json
          key: ${{ secrets.NUGET_API_KEY }}
          projects: MyProject,MyLibrary

高级用法

name: 发布 NuGet 包

on:
  push:
    tags:
      - 'v*.*.*'

jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      
      - name: 发布到私有 NuGet 源
        uses: actions/release-nuget@6.0
        with:
          source: https://myget.org/F/my-feed/v3/index.json
          key: ${{ secrets.MYGET_API_KEY }}
          projects: MyProject
          nuget_dir: .nuget

注意事项

  1. 请确保在 GitHub Secrets 中安全存储您的 NuGet API 密钥
  2. 项目路径应该相对于工作区根目录
  3. 对于预发布版本,请设置 allow_prerelease: true
  4. 支持的 .NET SDK 版本取决于 Docker Hub 上可用的 mcr.microsoft.com/dotnet/sdk 镜像版本

故障排除

  • 确保项目文件路径正确
  • 检查 NuGet API 密钥是否有效
  • 验证 NuGet 源地址是否可访问
  • 查看日志输出以获取详细的错误信息