亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

使用Azure Pipelines發布Nuget Package

標簽:
Java

本文介绍如何使用Azure Pipelines从Github发布Nuget包。

1、Install Azure Pipelines

点击进入GitHub Marketplace


webp

github.png


找到Azure Pipelines


webp

marketplace.png


点击安装,之后会登录微软账户,因为我已经安装过所以不再展示详细安装步骤,根据提示继续即可

webp

install.png

2、创建测试项目

创建一个类库项目,一个XUnit单元测试项目(前边的前缀主要是为了不重名,不然上传package会报错,当然CI的时候可以修改)


webp

project.png


添加如下代码

//Talk.csnamespace Aquarius.SayHello
{    public class Talk
    {
        public static string Hello()
        {            return "Hello";
        }
    }
}
//Talk_Test.csusing Xunit;namespace Aquarius.SayHello.Test
{    public class Talk_Test
    {
        [Fact]        public void Talk_Should_Be_Hello()
        {
            var result = Talk.Hello();

            Assert.Equal("Hello", result);
        }
    }
}

创建一个新项目,名字叫 Aquarius.SayHello,并确保下边的钩保持选中

webp

new repo.png


提交代码

webp

push code to github.png


其中.gitignore可以忽略,也可以使用git可视化工具或VS中的Git集成进行本步操作

webp

repo.png


push成功之后可以看到代码已经存在


3、集成Azure Pipelines

前往Azure DevOps,创建一个新的项目

webp

Azure DevOps.png


webp

new project.png


点击Pipelines

webp

Pipelines.png


创建一个新的pipeline
选择github

webp

source.png


模板选择ASP.NET Core

webp

template.png


将最后两个publish的删除,保持如下:

webp

remove publish.png


添加一个.Net Core并进行如下设置

webp

add .net core.png


webp

pack.png


添加一个nuget并进行如下设置

webp

add nuget.png


webp

push.png


在进行下一步之前先去Nuget创建一个apikey,并复制

webp

apikey.png


添加一个NuGet server并使用刚才创建的key

webp

Add nuget server.png


Feed URL:https://api.nuget.org/v3/index.json
下一步开启CI

webp

enable CI.png


最后一步保存并编译

webp

save&queue.png


编译结果以及Nuget package

webp

build result.png


webp

package.png


新的包已经出现(等一段时间就会出现在Published分类中)


4、自动编译

修改代码并提交,如下:

//Talk.csnamespace Aquarius.SayHello
{    public class Talk
    {
        public static string Hello()
        {            return "Hello";
        }        public static string Hi()
        {            return "Hi";
        }
    }
}
//Talk_Test.csusing Xunit;namespace Aquarius.SayHello.Test
{    public class Talk_Test
    {
        [Fact]        public void Talk_Should_Be_Hello()
        {
            var result = Talk.Hello();

            Assert.Equal("Hello", result);
        }

        [Fact]        public void Talk_Should_Be_Hi()
        {
            var result = Talk.Hi();

            Assert.Equal("Hi", result);
        }
    }
}

webp

commit & push.png


webp

CI build.png


触发自动编译并通过


webp

nuget package.png



作者:Weidaicheng
链接:https://www.jianshu.com/p/882a1336e458


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消