配置項目構建web
添加任務npm
添加源代碼地址和登陸憑據json
添加構建觸發器 後端
TFS添加WebHook api
添加構建步驟服務器
後端UI app
API端 asp.net
添加源代碼地址和登陸憑證測試
此圖沒有填寫憑證時顯示的錯誤ui
點擊Credential後面的添加 填寫能訪問源代碼的用戶名和密碼
選中剛剛添加的用戶名和密碼
再也不報錯 表示填寫正確
Branches to build能夠不用填寫,建議填寫須要發佈的對應分支
(這裏選擇,當推送代碼到TFS遠程版本倉庫時,觸發構建)
注:若是「構建觸發器」不存在此選項 請到Jenkins 插件管理安裝插件Team Foundation Server Plug-in
此觸發方式須要在服務器上(好比TFS)添加WebHook(若是服務器不支持添加WebHook,能夠考慮使用「輪詢SCM」,此處未做嘗試)
打開TFS 選中項目 右邊設置 選擇服務掛鉤
建立訂閱=>Jenkins=>下一步
該類型事件的觸發器=>選擇 「已推送代碼」
篩選器 存儲庫=>選擇對應的存儲庫
分支=>選擇要推送的分支
下一步
設置和身份驗證用戶名和密碼 填寫Jenkins訪問地址和用戶名、密碼
集成級別=>選擇「Jenkins的TFS插件」
點擊測試按鈕:
表示出配置成功
若是測試失敗,檢查Jenkins基URL 後面不要以斜槓(「/」)結尾 (神坑!!!)
npm i
npm run deploy-dev
注:若是不存在此Window Power Shell 請到Jenkins 插件管理安裝插件 PowerShell
關於deploy-dev命令 詳見後端UI代碼package.json文件
構建步驟
dotnet restore
dotnet publish src\Magicodes.Admin.Web.Host\Magicodes.Admin.Web.Host.csproj -c Release
"C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe" -source:contentPath=%WORKSPACE%\src\admin\api\Admin.Host\bin\Release\netcoreapp2.1\publish -verb:sync -enableRule:DoNotDeleteRule -allowUntrusted -dest:contentPath='站點名',ComputerName='https://開啓WebDeploy的地址:8172/msdeploy.axd?site=站點名',UserName='WebDeploy用戶',Password='WebDeploy用戶密碼',AuthType='Basic'
%WORKSPACE%:Jenkins中當前編譯項工做目錄 參見Jenkins可用環境變量列表
注意:關於Jenkins系統參數 參考 下面連接
參考連接:
https://weblogs.asp.net/scottgu/automating-deployment-with-microsoft-web-deploy