Slack과 함께 Azure Pipelines 사용

Azure DevOps Services

Slack용 Azure Pipelines 앱을 사용하면 Slack 사용자가 파이프라인 내에서 발생하는 이벤트를 쉽게 추적할 수 있습니다. 이 앱을 사용하면 사용자가 빌드, 릴리스, 보류 중인 승인 등과 같은 다양한 파이프라인 이벤트에 대한 구독을 설정하고 감독할 수 있습니다. 이러한 이벤트에 대한 알림은 사용자의 Slack 채널에 직접 전달됩니다.

참고 항목

이 기능은 Azure DevOps Services에서만 사용할 수 있습니다. 일반적으로 새 기능은 먼저 클라우드 서비스에 도입된 다음 Azure DevOps Server의 다음 주 버전 또는 업데이트에서 온-프레미스에서 사용할 수 있게 됩니다. 자세한 내용은 Azure DevOps 기능 타임라인을 참조 하세요.

필수 조건

  • Slack에서 Slack 작업 영역에 앱을 설치할 수 있는 권한이 있어야 합니다.
  • Azure DevOps의 경우 Slack 구독을 설정하려면 Project Collection 관리istrators 또는 Project 관리istrators 그룹에 있어야 합니다.

Azure Pipelines 앱 설치

Azure Pipelines Slack 앱으로 이동하여 Slack 작업 영역에 Azure Pipelines 앱을 설치합니다. 추가되면 아래와 같이 앱에서 환영 메시지가 표시됩니다. 핸들을 /azpipelines 사용하여 앱과 상호 작용을 시작합니다.

A screenshot showing the Azure Pipelines app welcome message.

파이프라인에 커넥트

Slack 작업 영역에 앱이 설치되면 모니터링하려는 파이프라인에 앱을 연결할 수 있습니다. 명령을 실행하기 전에 Azure Pipelines에 인증하라는 메시지가 표시됩니다.

A screenshot showing the sign-in prompt message.

프로젝트의 모든 파이프라인 모니터링을 시작하려면 채널 내에서 다음 슬래시 명령을 사용합니다.

/azpipelines subscribe [project url]

프로젝트 URL은 프로젝트 내의 모든 페이지에 연결할 수 있습니다(파이프라인에 대한 URL 제외). 예: /azpipelines 구독 https://dev.azure.com/myorg/myproject/

다음 명령을 사용하여 특정 파이프라인을 모니터링할 수도 있습니다.

/azpipelines subscribe [pipeline url]

파이프라인 URL은 URL이 있거나 buildId/releaseId URL에 있는 definitionId 파이프라인 내의 모든 페이지에 연결할 수 있습니다. 예: /azpipelines 구독https://dev.azure.com/myorg/myproject/_build?definitionId=123 또는 : /azpipelines 구독 https://dev.azure.com/myorg/myproject/_release?definitionId=123& view=mine&_a=releases

구독 명령은 기본적으로 몇 가지 구독으로 시작합니다. 다음은 다음 파이프라인 유형에 대해 사용하도록 설정된 기본 알림입니다.

빌드 파이프라인 릴리스 파이프라인 YAML 파이프라인
빌드 완료 알림 릴리스 배포 시작, 릴리스 배포 완료릴리스 배포 승인 보류 알림 실행 단계 상태가 변경되고승인 알림을 기다리는 실행 단계

A screenshot showing notification example.

구독 관리

채널에 대한 구독을 관리하려면 다음 명령을 사용합니다. /azpipelines subscriptions

이 명령은 채널에 대한 모든 현재 구독을 나열하고 구독을 추가하거나 제거할 수 있습니다.

참고 항목

팀 관리자는 프로젝트 관리자가 만든 구독을 제거하거나 수정할 수 없습니다.

A screenshot showing a list of subscriptions.

구독 사용자 지정

기본적으로 파이프라인을 구독할 때 필터가 적용되지 않은 여러 구독이 생성됩니다. 그러나 사용자가 기본 설정에 따라 이러한 구독을 개인 설정하려는 것이 일반적입니다. 예를 들어 사용자는 실패한 빌드 또는 프로덕션에 배포할 때만 알림을 받을 수 있습니다. Azure Pipelines 앱은 사용자가 채널에서 받는 메시지를 사용자 지정할 수 있도록 필터를 적용하는 옵션을 제공합니다. 구독을 사용자 지정하려면 다음을 수행합니다.

  1. /azpipelines subscriptions 명령을 실행하여 모든 구독을 나열합니다.

  2. 구독 추가를 선택합니다.

  3. 구독할 이벤트를 선택한 다음 원하는 구성을 선택합니다.

  4. 완료되면 저장을 선택합니다.

예: 실패한 빌드에 대한 알림만 가져오기

A screenshot showing a list how to add a custom new subscription.

배포 승인

릴리스 배포 승인 보류 알림(클래식 릴리스) 또는 승인 알림(YAML 파이프라인)을 기다리는 실행 단계를 구독하여 Azure Pipelines 포털로 이동하지 않고 Slack 채널 내에서 배포를 승인할 수 있습니다. 두 구독은 파이프라인을 구독할 때 기본적으로 만들어집니다.

A screenshot showing pipeline approval in Slack.

Slack용 Azure Pipelines 앱을 사용하면 Azure Pipelines 포털에서 사용할 수 있는 모든 검사 및 승인 시나리오를 처리할 수 있습니다. 여기에는 단일 승인자, 여러 승인자 및 팀 기반 승인이 포함됩니다. 개별적으로 또는 팀을 대신하여 요청을 승인할 수 있습니다.

A screenshot showing a predeployment pipeline approved in Slack.

모든 구독 제거

채널을 정리하려면 다음 명령을 사용하여 프로젝트 내의 모든 파이프라인에서 구독을 취소할 수 있습니다. 예: /azpipelines unsubscribe all https://dev.azure.com/myorg/myproject.

/azpipelines unsubscribe all [project url]

Important

이 명령은 프로젝트 관리자만 실행할 수 있습니다.

명령 참조

다음은 Slack용 Azure Pipelines 앱에서 지원하는 모든 명령입니다.

슬래시 명령 기능
/azpipelines 구독 [파이프라인 URL/ 프로젝트 URL] 프로젝트의 파이프라인 또는 모든 파이프라인을 구독하여 알림을 받습니다.
/azpipelines 구독 이 채널에 대한 구독 추가 또는 제거
/azpipelines 피드백 문제 보고 또는 기능 제안
/azpipelines 도움말 슬래시 명령에 대한 도움말 보기
/azpipelines signin Azure Pipelines 계정에 로그인
/azpipelines 로그아웃 Azure Pipelines 계정에서 로그아웃
/azpipelines unsubscribe all [project url] 채널에서 모든 파이프라인(프로젝트에 속) 및 관련 구독 제거

프라이빗 채널의 알림

Azure Pipelines 앱은 개인 채널에서도 파이프라인 활동을 모니터링하는 데 도움이 될 수 있습니다. 를 사용하여 /invite @azpipelines개인 채널에 봇을 초대해야 합니다. 봇이 추가되면 공개 채널과 동일한 방식으로 알림을 구성하고 제어할 수 있습니다.

참고 항목

  • 현재 Azure DevOps Services에서 호스트되는 프로젝트에서만 Slack용 Azure Pipelines 앱을 사용할 수 있습니다.
  • 사용자는 구독을 설정하려면 파이프라인이 포함된 프로젝트의 관리자여야 합니다.
  • 알림은 현재 직접 메시지 내에서 지원되지 않습니다.
  • '승인을 완료하기 전에 승인자의 ID 유효성 재검사' 정책이 적용된 배포 승인은 지원되지 않습니다.
  • Azure DevOps(조직 설정 - 보안 ->> 정책)에서 조직에 대한 알림을 받으려면 'OAuth를 통한 타사 애플리케이션 액세스'를 사용하도록 설정해야 합니다.

문제 해결

Slack용 Azure Pipelines 앱을 사용할 때 다음 오류가 발생하는 경우 이 섹션의 절차를 따르세요.

죄송합니다. 문제가 발생했습니다. 다시 시도하세요.

Azure Pipelines 앱은 OAuth 인증 프로토콜을 사용하며 OAuth를 통한 타사 애플리케이션 액세스를 사용하도록 설정해야 합니다. 이 설정을 사용하려면 조직 설정>보안>정책으로 이동하고 조직의 OAuth를 통해 타사 애플리케이션 액세스를 켭니다.

A screenshot showing how to enable third party access via OAuth.

구성하지 못했습니다. 조직이 존재하고 충분한 권한이 있는지 확인하세요.

다음 URL https://aka.ms/VsSignout로 이동하여 Azure DevOps에서 로그아웃합니다.

프라이빗/시크릿 브라우저 창을 열고 로그인합니다 https://aex.dev.azure.com/me . 구독하려는 파이프라인이 있는 조직이 포함된 디렉터리를 선택합니다.

A screenshot showing how to select your pipeline directory.

동일한 브라우저사용하여 새 탭을 열고 .https://slack.com 웹 클라이언트를 사용하여 작업 영역에 로그인한 다음, 명령을 실행 /azpipelines signout/azpipelines signin다음 .

Sign in 단추를 선택하면 아래 예제와 같이 동의 페이지로 리디렉션됩니다. 전자 메일 주소 옆에 표시된 디렉터리가 이전 단계에서 선택한 디렉터리와 일치하는지 확인합니다. 수락을 선택하여 로그인 프로세스를 완료합니다.

A screenshot showing how to allow pipelines slack integration.