前言

Azure DevOps 的 Wiki 頁面通常紀錄著許多專案相關的重要資訊,這些資訊可能包含環境設定、系統操作流程、開發程序與系統版本資訊...等。在某些情境下,團隊會想要在 CI /CD 流程中,自動的建立或編輯 Wiki 資訊,以減少手動更新資料需求,如 Release Note。 在 Azure DevOps,您可以透過  Services REST API 對於專案內的 wiki 頁面進行新增、修改、刪除操作,並將撰寫好的 scripts 放入 Build/Deploy pipeline 內,輕鬆地達成這個需求。本篇文章若有錯誤或任何建議,請各位先進不吝指教。

Azure DevOps Wiki Page



介紹

設定與取得 Personal Access Token (PAT)
Step 1. 首先,我們先登入 Azure DevOps,點選右上角圖像  Security


Step 2. 點選 New Token


Step 3. 依序輸入名稱、過期時間...等資訊  選擇 Custom Defined,找到 Wiki,勾選 Read & Write → 點選 Create

Tip: 您可以點選 Show all scopes 顯示所有 Scope

Step 4. 紀錄下 Token,使用 Services REST API 時會需要它 (若離開這個頁面,您又忘記Token,就只能建立新的 Token 了)



Azure DevOps Services REST API - Wiki 說明
透過 Services REST API 建立 Wiki 頁面的 url 如下,方法為 PUT https://dev.azure.com/{organization}/{project}/_apis/wiki/wikis/{wikiIdentifier}/pages?path={path}&api-version=5.0

參數描述如下:

名稱 位置 必要 類型 描述
organization path True string 您的組織名稱
project path True string Project ID 或名稱
wikiIdentifier path True string Wiki ID 或名稱
path query True string Wiki 頁面路徑
api-version query True string API 版本

您能在 wiki 頁面上找到 organization、project ID 與 wikiIdentifier。如下圖所示,organization 為 duranhsieh;project ID 為 durantest;wikiIdentifier 為 durantest.wiki

Tip: Wiki 頁面有主頁面與子頁面,若要新增子頁面,路徑 (path) 表示方式為 主頁面/子頁面 (MasterPage/SubPage)

標頭 (Header)
名稱 必要 類型 描述
authorization True string Basic your_token

主體 (Body)
名稱必要類型描述
content Truestringwiki 頁面內文


測試與應用
了解上列參數後,我們可以開始呼叫 Services REST API 來編輯  Wiki 頁面,下面提供 Postman、C#、curl 與 powershell 方式,提供參考:

Postman



C#

curl

Powershell


執行後,您可以到 wiki page 看見執行結果:


參考資料

1. Azure DevOps Services REST API 5.0 Wiki Page - Microsoft Docs