Slack과 함께 Azure Pipelines 사용
Azure DevOps Services
이 문서에서는 Slack용 Azure Pipelines 앱을 사용하여 파이프라인 이벤트를 모니터링하는 방법을 보여 줍니다. 빌드, 릴리스 및 보류 중인 승인과 같은 파이프라인 이벤트에 대한 구독을 설정하고 관리할 수 있습니다. 이러한 이벤트에 대한 알림은 Slack 채널에 직접 전달됩니다.
참고 항목
이 기능은 Azure DevOps Services에서만 사용할 수 있습니다. 일반적으로 새 기능은 먼저 클라우드 서비스에 도입된 다음 Azure DevOps Server의 다음 주 버전 또는 업데이트에서 온-프레미스에서 사용할 수 있게 됩니다. 자세한 내용은 Azure DevOps 기능 타임라인을 참조 하세요.
필수 조건
- Slack 작업 영역에 앱을 설치할 수 있는 권한이 있는 Slack 계정입니다.
- 프로젝트 컬렉션 관리자 또는 프로젝트 관리자 권한이 있는 Azure DevOps 프로젝트입니다.
Azure Pipelines 앱 설치
Slack 작업 영역에 Azure Pipelines Slack 앱을 설치합니다. 앱이 설치되면 다음과 같은 환영 메시지가 표시됩니다. 앱과 상호 작용을 시작하려면 입력 /azpipelines
합니다.
파이프라인에 연결
Slack 작업 영역에 앱이 설치되면 모니터링하려는 파이프라인에 앱을 연결할 수 있습니다. 명령을 실행하기 전에 Azure Pipelines에 인증해야 합니다.
파이프라인 구독
프로젝트의 모든 파이프라인 모니터링을 시작하려면 채널을 입력하고 Azure DevOps 프로젝트 URL로 바꿔 <project url>
서 입력 /azpipelines subscribe <project url>
합니다. 예를 들어 /azpipelines subscribe https://dev.azure.com/myorg/myproject/
프로젝트 URL은 파이프라인 페이지를 제외한 프로젝트 내의 모든 페이지에 연결할 수 있습니다.
를 사용하여 /azpipelines subscribe <pipeline url>
특정 파이프라인을 모니터링할 수 있습니다. 파이프라인 URL은 URL이 있거나 buildId/releaseId
URL에 있는 definitionId
파이프라인 내의 모든 페이지에 연결할 수 있습니다. 예시:
/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
합니다. 이 명령은 채널에 대한 모든 현재 구독을 나열하고 구독을 추가하거나 제거할 수 있습니다.
참고 항목
팀 관리자는 프로젝트 관리자가 만든 구독을 제거하거나 수정할 수 없습니다.
구독 사용자 지정
기본 구독에는 필터가 적용되지 않지만 기본 설정에 따라 이러한 구독을 사용자 지정할 수 있습니다. 예를 들어 프로덕션에 실패한 빌드 또는 배포에 대해서만 알림을 받을 수 있습니다. 필터를 적용하여 채널에서 받는 메시지를 사용자 지정할 수 있습니다.
구독을 사용자 지정하려면 다음을 수행합니다.
/azpipelines subscriptions
명령을 실행하여 모든 구독을 나열합니다.- 구독 추가를 선택합니다.
- 구독할 이벤트를 선택한 다음 원하는 구성을 선택합니다.
- 저장을 선택합니다.
예를 들어 실패한 빌드에 대해서만 알림을 받으려면 빌드 상태에서 실패를 선택합니다.
배포 승인
Azure Pipelines로 가지 않고 Slack 채널 내에서 배포를 승인할 수 있습니다. YAML 파이프라인에 대한 승인 알림 또는 클래식 릴리스에 대한 릴리스 배포 승인 보류 알림을 기다리는 실행 단계를 구독합니다. 이러한 두 구독은 파이프라인을 구독할 때 기본적으로 만들어집니다.
Slack용 Azure Pipelines 앱을 사용하면 Azure Pipelines 포털에서 사용할 수 있는 모든 검사 및 승인 시나리오를 처리할 수 있습니다. 이러한 시나리오에는 단일 승인자, 여러 승인자 및 팀 기반 승인이 포함됩니다. 개별적으로 또는 팀을 대신하여 요청을 승인할 수 있습니다.
모든 구독 제거
채널을 정리하려면 이 명령을 사용하여 /azpipelines unsubscribe all <project url>
프로젝트의 모든 파이프라인에서 구독을 취소할 수 있습니다. 예들 들어 /azpipelines unsubscribe all https://dev.azure.com/myorg/myproject
입니다.
Important
프로젝트 관리자만 이 명령을 실행할 수 있습니다.
명령 참조
Slack용 Azure Pipelines 앱은 다음 명령을 지원합니다.
명령 | 설명 |
---|---|
/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
개인 채널에 봇을 초대해야 합니다. 봇을 추가한 후에는 공용 채널과 동일한 방식으로 알림을 구성하고 제어할 수 있습니다.
조건 및 제한 사항
- Azure DevOps Services에서만 Slack용 Azure Pipelines 앱을 사용할 수 있습니다.
- 구독을 설정하려면 파이프라인을 포함하는 프로젝트의 관리자여야 합니다.
- 알림은 직접 메시지 내에서 지원되지 않습니다.
- 승인 정책을 적용하기 전에 승인자의 유효성 재검사 ID가 있는 배포 승인 은 지원되지 않습니다.
- 앱을 사용하려면 Azure DevOps 조직 설정>보안>정책에서 OAuth를 통한 타사 애플리케이션 액세스를 사용하도록 설정해야 합니다.
문제 해결
Slack용 Azure Pipelines 앱을 사용할 때 다음 오류가 발생하는 경우 이 섹션의 절차를 시도해 보세요.
죄송합니다. 문제가 발생했습니다. 다시 시도하세요.
Azure Pipelines 앱은 OAuth 인증 프로토콜을 사용하며 OAuth를 통한 타사 애플리케이션 액세스를 사용하도록 설정해야 합니다. 이 설정을 사용하려면 조직 설정>보안>정책으로 이동하고 OAuth를 통해 타사 애플리케이션 액세스를 사용하도록 설정합니다.
구성하지 못했습니다. 조직이 존재하고 충분한 권한이 있는지 확인하세요.
로 이동하여 Azure DevOps에서 로그아웃합니다
https://aka.ms/VsSignout
.프라이빗/시크릿 브라우저 창에서 이동하여 로그인합니다
https://aex.dev.azure.com/me
. 파이프라인이 있는 조직이 포함된 디렉터리를 선택해야 합니다.동일한 브라우저에서 새 탭
https://slack.com
을 열고 . 웹 클라이언트를 사용하여 작업 영역에 로그인한 다음, 다음을 실행/azpipelines signout
합니다/azpipelines signin
.Sign in
단추를 선택합니다. 동의 페이지로 리디렉션되는 경우 전자 메일 주소 옆에 표시되는 디렉터리가 로그인한 디렉터리와 일치하는지 확인합니다.