撰寫VSTS的Build Task
開發環境準備:
- VS Code、node.js
- 安裝tfx-cli
npm i -g tfx-cli
初始化開發環境:
- 建立套件資料夾
- 以VS Code開啟
- 建立vss-extension.json
- 安裝vsts-task-sdk,使用 npm i vsts-task-sdk -D
建立Task:
- 執行 tfx build tasks create
- 指定Task Name、Friendly Task Name、Task Description、Task Author,會建立出一個folder,裡面已經有一個sample的task定義
- 準備好task的icon(圖片大小需要是32X32)
- 建立MSDeployExecute.ps1
- 建立MSDeploy.cmd
- 在task.json的execution中,留下Powershell3的execution,把target指定成MSDeployExecute.ps1
- 在task.json中,更改category為Deploy
- 設定inputs,加入verb和otherArgs的參數
- 定義task的版本號
- 找到node_modules/vsts-task-sdk/VstsTaskSdk,將其複製到task資料夾中的ps_modules,路徑要是 task資料夾/ps_modules/VstsTaskSdk
封裝套件:
- 編輯vss-extension.json,在files中加入task的資料夾msdeploy
- 在contributions中加入task
- 最後執行 tfx extension create 建立套件
- 執行完成會在套件資料夾中看到一個副檔案為vsix的檔案
上傳到TFS上使用:
- 在TFS網站上的右上角
- 點擊 瀏覽TFS擴充功能
- 找到管理擴充功能
- 點擊上傳新的擴充功能
- 將vsix上傳到server
- 上傳完成後將其完裝到要使用的collection
- 最後即可在建置或發行時使用