共用方式為


搭配 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 按鈕。 如果您重新導向至同意頁面,請確認電子郵件地址旁顯示的目錄符合您登入的目錄。