分享方式:


搭配 Slack 使用 Azure Pipelines

Azure DevOps Services

本文說明如何使用適用於 SlackAzure Pipelines 應用程式來監視管線事件。 您可以建立和管理管線事件的訂用帳戶,例如組建、發行和擱置核准。 這些事件的通知會直接傳遞至您的 Slack 通道。

注意

此功能僅適用於 Azure DevOps Services。 一般而言,雲端服務會先引進新功能,然後在下一個主要版本或 Azure DevOps Server 的更新中提供內部部署。 如需詳細資訊,請參閱 Azure DevOps 功能時程表

必要條件

  • 具有將應用程式安裝到 Slack 工作區之許可權的 Slack 帳戶。
  • 具有 專案集合管理員專案管理員許可權的 Azure DevOps 專案。

安裝 Azure Pipelines 應用程式

將 Azure Pipelines Slack 應用程式 安裝到您的 Slack 工作區。 應用程式安裝之後,您會看到下列歡迎訊息。 輸入 /azpipelines 以開始與應用程式互動。

顯示 Azure Pipelines 應用程式歡迎訊息的螢幕快照。

連線到您的管線

在 Slack 工作區中安裝應用程式之後,您可以將應用程式連線到您想要監視的任何管線。 您必須先向 Azure Pipelines 進行驗證,才能執行任何命令。

顯示登入提示訊息的螢幕快照。

訂閱管線

若要開始監視專案中的所有管線,請在通道中輸入 /azpipelines subscribe <project url> ,並將 取代 <project url> 為您的 Azure DevOps 專案 URL。 專案 URL 可以連結到專案內的任何頁面,但管線頁面除外,例如 /azpipelines subscribe https://dev.azure.com/myorg/myproject/

您可以使用 來監視特定管線 /azpipelines subscribe <pipeline url>。 管線 URL 可以連結到管線 definitionId 內具有 或 buildId/releaseId URL 中的任何頁面。 例如:

  • /azpipelines subscribe https://dev.azure.com/myorg/myproject/_build?definitionId=123
  • /azpipelines subscribe https://dev.azure.com/myorg/myproject/_release?definitionId=123&view=mine&_a=releases

命令 subscribe 預設會訂閱下列通知:

  • 針對 YAML 管線:
    • 執行階段狀態已變更
    • 正在等候核准的執行階段
  • 針對傳統組建管線, 組建已完成
  • 針對傳統發行管線:
    • 已啟動發行部署
    • 發行部署已完成
    • 發行部署核准擱置中

顯示通知範例的螢幕快照。

管理訂閱

若要管理通道的訂用帳戶,請輸入 /azpipelines subscriptions。 此命令會列出通道的所有目前訂用帳戶,並可讓您新增或移除訂用帳戶。

顯示訂用帳戶清單的螢幕快照。

注意

小組管理員無法移除或修改 Project Administrators 所建立的訂用帳戶。

自訂訂閱

默認訂用帳戶未套用任何篩選,但您可以根據您的喜好設定自定義這些訂用帳戶。 例如,您可能只想要接收失敗組建或部署到生產環境的通知。 您可以套用篩選來自定義您在通道中收到的訊息。

若要自訂訂用帳戶:

  1. /azpipelines subscriptions執行 命令以列出您的所有訂用帳戶。
  2. 選取 [新增訂用帳戶]。
  3. 選取您想要訂閱的事件,然後選取所需的設定。
  4. 選取 [儲存]。

例如,若要只取得失敗組建的通知,請選取 [建置狀態] 底下的 [失敗]。

顯示如何自訂訂用帳戶的螢幕快照。

核准部署

您可以從 Slack 通道內核准部署,而不需要前往 Azure Pipelines。 訂閱執行階段,等待 YAML 管線的核准通知或傳統版本的發行部署核准擱置通知。 當您訂閱管線時,預設會建立這兩個訂用帳戶。

顯示 Slack 中管線核准的螢幕快照。

適用於 Slack 的 Azure Pipelines 應用程式可讓您處理 Azure Pipelines 入口網站中可用的所有檢查和核准案例。 這些案例包括單一核准者、多個核准者和小組型核准。 您可以個別或代表小組核准要求。

顯示 Slack 中核准之預先部署管線的螢幕快照。

拿掉所有訂用帳戶

若要解譯通道,您可以使用 /azpipelines unsubscribe all <project url> 命令取消訂閱專案中的所有管線。 例如: /azpipelines unsubscribe all https://dev.azure.com/myorg/myproject

重要

只有 Project Administrator 可以執行此命令。

命令參考資料

適用於 Slack 的 Azure Pipelines 應用程式支援下列命令:

Command 描述
/azpipelines subscribe <pipeline url or project url> 訂閱專案中的管線或所有管線,並接收通知。
/azpipelines subscriptions 新增或移除此通道的訂用帳戶。
/azpipelines feedback 回報問題或建議功能。
/azpipelines help 取得命令的說明。
/azpipelines signin 登入您的 Azure Pipelines 帳戶。
/azpipelines signout 註銷您的 Azure Pipelines 帳戶。
/azpipelines unsubscribe all <project url> 從通道中移除所有專案管線及其相關聯的訂用帳戶。

私人頻道中的通知

Azure Pipelines 應用程式也可以協助您監視私人頻道中的管線活動。 您必須使用 /invite @azpipelines邀請 Bot 到私人頻道。 新增 Bot 之後,您可以設定及控制通知的方式與公用通道相同。

條件和限制

  • 您只能搭配 Azure DevOps Services 使用適用於 Slack 的 Azure Pipelines 應用程式。
  • 若要設定訂用帳戶,您必須是包含管線之專案的管理員。
  • 直接訊息內不支援通知。
  • 不支援在完成套用的核准原則之前,具有 核准者重新驗證身分識別的部署核准
  • 若要使用應用程式,必須在 Azure DevOps 組織設定>安全>策略中啟用透過 OAuth 的第三方應用程式存取。

疑難排解

如果您在使用 Azure Pipelines App for Slack 時收到下列錯誤,請嘗試本節中的程式。

抱歉,發生錯誤。 請再試一次。

Azure Pipelines 應用程式會使用 OAuth 驗證通訊協定,而且需要 啟用透過 OAuth 的第三方應用程式存取權。 若要啟用此設定,請流覽至 [組織設定>安全>策略],然後透過OAuth 啟用第三方應用程式存取。

顯示如何透過 OAuth 啟用第三方存取的螢幕快照。

設定失敗。 請確定組織存在,且您有足夠的許可權。

  1. 流覽至 https://aka.ms/VsSignout以註銷 Azure DevOps。

  2. 在私人/incognito 瀏覽器視窗中,流覽至 https://aex.dev.azure.com/me 並登入。 請務必選取包含您管線之組織的目錄。

    顯示如何選取管線目錄的螢幕快照。

  3. 在相同的瀏覽器中,開啟新的索引標籤並移至 https://slack.com。 使用 Web 用戶端登入您的工作區,然後執行 /azpipelines signout ,後面接著 /azpipelines signin執行 。

  4. 選取 Sign in 按鈕。 如果您重新導向至同意頁面,請確認電子郵件地址旁顯示的目錄符合您登入的目錄。