分享方式:


使用 Trello 建立 Azure DevOps Services 和 TFS 的服務勾點

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

在 Trello 中建立卡片和清單,以回應來自 Azure DevOps 的事件。 例如,推送程式代碼或建置時。

取得 Trello 授權令牌

  1. 如果您沒有 Trello 帳戶,請在 Trello 註冊

  2. 移至 [ 授權 Azure DevOps Services for Trello] 頁面,然後使用 Trello 認證登入。

  3. 允許 Azure DevOps 使用 Trello 帳戶。

    允許 Azure DevOps Services

  4. 複製授權令牌。

    Trello 授權令牌

從 Azure DevOps Services 事件建立 Trello 卡片或清單。

  1. 移至您的項目服務勾點頁面:

    https://{orgName}/{project_name}/_settings/serviceHooks

    專案管理頁面

    選取 [建立訂閱]。

  2. 挑選 Trello 服務。

    服務頁面,已選取 Trello

  3. 設定觸發Visual Studio事件。 在此情況下,我們會在建立工作專案時讓訂用帳戶回應。

    觸發程式組態頁面

  4. 設定 Trello 將採取的動作以回應觸發程式 - 建立卡片或清單。

    動作組態頁面

    您可以使用佔位元元,將事件中的內容插入訂用帳戶所建立卡片或清單的名稱和描述中。 例如,當我們執行測試通知時,所建立的卡片會命名為 “Bug #5:一些很棒的新想法!”,因為測試工作專案是一個錯誤 (ID=5), 標題為 “Some Great New idea!”。

  5. 測試服務勾點訂用帳戶並完成精靈。

    測試通知

現在已設定。 移至 Trello,並查看卡片出現。

具有 Bug 卡片的歡迎面板 #5

預留位置

您可以在清單名稱或訂用帳戶所建立卡片名稱或描述中插入佔位元元。 建立清單或卡片時,佔位元將會由引發事件中的值取代。 我們在此頁面中用於卡片名稱的範例會使用:

    {{workitem.workItemType}} #{{workitem.id}}: {{workitem.title}}

因此,使用標識碼 5 建立 Bug 並標題為「一些很棒的新想法!」時,卡片名稱為「Bug #5:一些很棒的新想法!」。

佔位元的基本形式是 {{resource.field}} 資源是引發事件的資源名稱(工作專案、建置等等),而欄位是事件資源區段中的欄位,例如識別碼。 因此,如果訂用帳戶適用於已完成的組建,則可能是類似

    Build {{build.id}} completed at {{build.finishTime}}

其中 build 是資源和標識碼的名稱,finishTime 是此資源中可用的欄位。 若要瞭解可供使用的事件類型、字段和資源,請查看 事件參考

工作專案欄位

工作專案欄位會出現在欄位陣列的事件中,如下列範例所示:

    " fields": {
                " System.AreaPath": "Fabrikam-Fiber-Git", 
                " System.TeamProject": "Fabrikam-Fiber-Git", 
                " System.IterationPath": "Fabrikam-Fiber-Git", 
                " System.WorkItemType": "Product Backlog Item", 
                " System.State": "New", 
                " System.Reason": "New backlog item", 
                " System.CreatedDate": "2014-11-05T21:11:28.85Z", 
                " System.CreatedBy": "Normal Paulk", 
                " System.ChangedDate": "2014-11-05T21:11:29.23Z", 
                " System.ChangedBy": "Normal Paulk", 
                " System.Title": "Test PBI", 
                " Microsoft.Azure DevOps Services.Common.BacklogPriority": 999999999, 
                " WEF_6CB513B6E70E43499D9FC94E5BBFB784_Kanban.Column": "New"
           },

直接從事件定義工作,我們將建立卡片名稱,例如下列範例:

    {{workitem.fields["System.workItemType"]}} #{{workitem.fields["System.id"]}: {{workitem.fields["System.title"]}}

在快捷方式中,您可以參考 System 或 Microsoft.Azure DevOps Services.Common 命名空間中的任何字段,就好像它們是資源的字段一樣。 因此,{{workitem.fields["System.workItemType"]}} 會變成 {{workitem.workItemType}}

佔位元表達式

這些佔位元會使用與 Mustache 基本上相容的句柄欄範本實作。 一些有用的表達式包括

運算式類型 examples
基本表達式 {{workitem.name}}
數位表示式 {{pullRequest.reviewers.[0].displayName}}
鬍鬚鬍子區段 {{#workitem.assignedTo}} 此WI已指派 {{/workitem.assignedTo}}
鬍子反轉區段 {{^workitem.assignedTo}} 未指派此WI {{/workitem.assignedTo}}
句柄欄封鎖協助程式 取代為
if/else
unless
每個
句柄列路徑 ...
this
例如,{{../comment/id}}{{this/title}}
範本批注 {{!-- this is a handlebar comment --}}

定價

Azure DevOps 不會收取與外部服務整合的架構費用。 請查看特定服務的月臺,以取得與其服務相關的定價。

問與答

問:我是否可以以程序設計方式建立訂用帳戶?

答:是,請參閱這裡的詳細數據

問:我可以取得 Trello 的詳細資訊嗎?

答:是的, trello.com