文章目錄
將 NuGet Package 發行至 ProGet
之前 自建 NuGet Server 曾經介紹過使用 NuGet.Server 套件自建 NuGet server 來儲存 NuGet package,不過使用 NuGet.Server 套件在整個介面及管理功能上都過於簡陋,不適合當做正式服務,因此最後選擇 ProGet 這個產品來當做 NuGet server,過程中遭遇到問題,特別紀錄一下其中的眉眉角角
安裝 ProGet
下載 ProGet
ProGet 有免費版跟付費版本差別,但安裝檔是相同的,實際安裝時才需選擇
下載位置 :Download ProGet
安裝 ProGet
安裝上沒有什麼特別之處,只要依實際情況設定即可
授權宣告
選擇版本
註冊
安裝路徑
資料庫
Host 方式
執行身份
安裝
設定 ProGet
登入 ProGet
預設帳號密碼:
Admin
/Admin
建立 Feed
Create New Feed
Create Feed
選擇 Feed Type 及設定 Feed name
其他設定
依實際環境調整
發行 Package
Packages –> Add Package
選擇發行方式
使用 NuGet api 發行 Package 的安全性設定
這是本篇文章的重點,特別拉出來另外說明,可參照官方說明 - API Keys in ProGet
NuGet api 用法
Feed 未設定 NuGet API Key,使用帳密上傳
這是 ProGet 的預設做法,但跟其他 NuGet Server 做法不同
使用 nuget api
語法
NuGet.exe push {package} -ApiKey {Account}:{Password} -Source http://{ProGet_Server}/nuget/{Feed_Name}/
範例
使用 NuGet Package Explorer
Feed 設定 NuGet API Key,需允許匿名上傳
未設定會出現
403 (Forbidden)
錯誤設定 –> Manage Users & Tasks
Tasks –> Add Permission
將
Anonymous
加至 Principals,並把Publish Packages
加至 Tasks成功上傳
心得
ProGet 在使用流程還有不小的改善空間,也缺乏系統化的文件來讓第一次使用的人快速上手,以我為例,明明我已經有其他 NuGet server 的使用經驗,但在使用 ProGet 卻佔不到便宜,在權限問題上卡了好久
說明文件及畫面功能的文字也對不起來,明明是個簡單設定卻一直找不到,畫面與文件上的文字不一致造成不少誤導
參考資訊
文章作者 Yowko Tsai
上次更新 2021-11-01
授權合約
本部落格 (Yowko's Notes) 所有的文章內容(包含圖片),任何轉載行為,必須通知並獲本部落格作者 (Yowko Tsai) 的同意始得轉載,且轉載皆須註明出處與作者。
Yowko's Notes 由 Yowko Tsai 製作,以創用CC 姓名標示-非商業性-相同方式分享 3.0 台灣 授權條款 釋出。