當前位置:
首頁 > 最新 > NET Core從Github到 Nuget 持續集成、部署

NET Core從Github到 Nuget 持續集成、部署

一.前言

Nuget 作為一個.NET研發人員,我想你都不會陌生,他為我們提供非常方便的程序包管理,不管是版本,還是包的依賴都能輕鬆應對,可以說是我們的好助手。而 Nuget 除了官方以外,我們也可以用起提供的程序包快速構建一個Nuget Server,打造企業內部的私有 Nuget,用來管理項目的package是十分方便的,相對於我們直接引用DLL,他可以方便的控制程序集版本和依賴。今天講講Nuget如何進行持續集成、部署,可以減少我們更新package所需時間

對nuget上傳包以及使用nuget命令有不了解的朋友可以花幾分鐘看下這兩篇文章:

發布你的程序包到Nuget

使用 dotnet cli 命令上傳 nuget 程序包

二.為什麼用github?

如果用過持續集成的朋友都應該知道持續集成工具從代碼倉庫拉去代碼,今天我選用github來進行講解,因為github作為全球最大的開源社區,聚集了非常多的項目代碼,你是否有注意Nuget上面的程序包很大一部分都是開源的,而且大部分都是開源在github的,所以github結合Nuget是非常不錯的。

三.Jenkin 從配置 github 拉去代碼

Jenkins算是使用量比較多的一個持續集成工具,關於它我們寫了一個系列,可以參考下 http://www.cnblogs.com/stulzq/p/8629165.html

1.創建 github AccessToken

(1) 選擇 用戶下拉列表選項中的 「Setting」

(2) 選擇 「Developer settings」

(3) 選擇 「Personal access tokens」->「Generate new token」

(4) 選擇下圖的許可權

然後點生成就可以了,一定要保存好這個token

2.配置Jenkins

(1) 進入 「系統管理」->"管理插件" 安裝 插件

(2) 然後進入 「系統管理」->「系統設置->Github Server」 添加如下信息

Credentials 那裡點擊 Add 添加如下信息

添加完畢之後記得選擇我們剛剛添加的信息

最後點擊"Test Connection"如果配置正確應當有如下顯示:

3.創建任務

(1) 創建一個自由風格的任務:

(2) 勾選 填入github倉庫url

(3) 源碼管理選擇git,填寫倉庫git地址,選擇需要構建的分支,我這裡選擇 (** 為選擇所有分支)

(4) 構建觸發器選擇

(5) 然後添加構建步驟 ,填入構建和部署的命令

(6) 如何編寫構建命令 按照如下格式編寫

最後點擊保存。

4.最後一步,註冊webhook鉤子

回到我們的 "系統管理"->系統設置"->"Github Server" 選擇高級(有兩個高級 別選擇錯了)

然後進行如下操作為我們的倉庫創建鉤子

如果創建成功,到我們github倉庫 「Setting」->"Webhooks" 應當可以看見github插件已經為我們自動創建了一個鉤子:

到此,我們的配置就結束了,如果提交代碼到對應分支,就會觸發構建,如果構建成功就會上傳package到我們的Nuget,十分方便,好了趕緊去享受吧。

如果出錯,我們可以 控制台日誌來查出錯誤。

四.常見問題

如果部署到企業內部的私有Nuget Server,只需修改 參數後的地址就行了。

如果採用我前面寫的系列教程安裝的Jenkins由於是採用Docker容器運行的,所以自帶沒有dotnet core的環境,需要進入Docker容器,安裝才行,在dotnet core 官網下選擇安裝的時候,系統選擇 https://www.microsoft.com/net/learn/get-started/linux/debian9

搭建私有Nuget ,請看這篇文章 https://www.jianshu.com/p/08e43b822137

五.寫在最後

配置看似很繁瑣,其實很簡單,配置過一次,再配置第二次就是手到擒來,祝大家配置成功,如果有什麼問題也可以加入下方QQ群進行提問。最後想說一句話,NET Core 的生態構建需要你的參與,希望大家能共同支持.NET Core成長。歡迎大家加入NCC https://github.com/dotnetcore

NCC 全稱 .NET Core Community(同時保有 .NET China Community 的名稱,其縮寫為 dotnet-china),成立於 2016 年年中。NCC(時名為 .NET Core 中國學習小組)最初項目為微軟 ASP.NET Core 文檔翻譯項目,為第一批學習 ASP.NET Core 的中文圈開發人員提供了巨大便利,後微軟逐步文檔國際化,該翻譯項目完成全部歷史使命。後經歷多次調整,最終更名為 .NET Core Community,是一個目前包括 12 個成員項目(含 1 個外部項目)、4 個子團隊的正不斷成長、完善,並正加速前進的 .NET/.NET Core 開源社區組織。

原文地址:http://www.cnblogs.com/stulzq/p/8877652.html


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 dotNET跨平台 的精彩文章:

傲嬌碼農的自我修養
EF Core 2.1路線圖:視圖、GROUP BY和惰性載入

TAG:dotNET跨平台 |