GitHub 自动构建 Nuget 包

工作流程

  1. 用户git push
  2. 触发github action
  3. 执行用户配置的yml脚本

如何配置?

  1. 首先要得到两个凭证

    • Nuget Api Key

      • 点击创建 Create

      • 配置下 Copy 凭证 [找地方存起来]

    • Github Token

      • 进入github官网 https://github.com 并登录

      • 选中Settings

      • 选中Developer settings

      • 选中Personal access token

      • 点击Generate new token

      • 配置一下生成

      • 复制后[找地方存起来]

  2. 配置项目中

    如下图所示配置凭证

  3. 添加Actions

    dotnet-core.yml

    name: .NET Core
    
    on:
      push:
        branches: [ master ]
      pull_request:
        branches: [ master ]
    
    jobs:
      build:
        runs-on: ubuntu-latest
    
        steps:
        - uses: actions/checkout@v2
        - name: 建立.netcore环境
          uses: actions/setup-dotnet@v1
          with:
            dotnet-version: 3.1.301
        - name: 安装依赖
          run: dotnet restore
        - name: 构建
          run: dotnet build --configuration Release --no-restore
        - name: 添加github仓库
          run: |
            nuget sources add -name github -Source https://nuget.pkg.github.com/ORGANIZATION_NAME/index.json -Username ORGANIZATION_NAME -Password ${{ secrets.GitHubToken }}
        - name: 安装nuget 
          uses: nuget/setup-nuget@v1
          with:        
            nuget-version: '5.x'
        - name: 发布生成包到github和nuget
          run: |
            nuget push ./bin/Release/*.nupkg -Source https://api.nuget.org/v3/index.json -SkipDuplicate -ApiKey ${{ secrets.NugetKey }} -NoSymbol
            nuget push ./bin/Release/*.nupkg -Source github -SkipDuplicate
    
    
posted @   林一怂儿  阅读(592)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
点击右上角即可分享
微信分享提示