게이트 및 승인을 사용하여 배포 제어

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

릴리스 파이프라인에서 수동 배포 승인, 게이트 및 수동 개입의 조합을 사용하여 워크플로에 대한 모든 특정 배포 전 요구 사항을 충족하도록 배포를 빠르고 쉽게 구성할 수 있습니다.

이 자습서에서는 다음 사항에 대해 알아봅니다.

  • 배포 전 게이트
  • 수동 작업
  • 수동 유효성 검사
  • 배포 로그

필수 조건

게이트 설정

게이트를 사용하여 릴리스 파이프라인이 사용자 개입 없이 배포 전에 특정 기준을 충족하는지 확인할 수 있습니다.

  1. 파이프라인 릴리스를> 선택한 다음 릴리스 파이프라인을 선택합니다. 편집을 선택하여 파이프라인 편집기를 엽니다.

    릴리스 파이프라인에 대한 편집 단추를 보여 주는 스크린샷

  2. 스테이지의 배포 전 아이콘을 선택한 다음 토글 단추를 선택하여 게이츠를 사용하도록 설정합니다.

    게이트를 사용하도록 설정하는 방법을 보여 주는 스크린샷.

  3. 추가된 게이트를 평가하기 전의 지연 시간을 지정합니다. 이번에는 결과를 반환하기 전에 게이트 함수를 초기화하고 안정화할 수 있습니다.

    배포 전 게이트의 지연 시간을 설정하는 방법을 보여 주는 스크린샷

  4. 추가를 선택한 다음, 작업 항목 쿼리를 선택합니다.

    쿼리 작업 항목 작업을 추가하는 방법을 보여 주는 스크린샷

  5. 드롭다운 메뉴에서 기존 작업 항목 쿼리를 선택합니다. 쿼리가 반환할 작업 항목 수에 따라 최대 및 최소 임계값을 설정합니다.

    작업 항목 쿼리 작업을 구성하는 방법을 보여 주는 스크린샷

  6. 평가 옵션 섹션을 선택한 다음 시간 제한 및 샘플링 간격을 지정합니다. 지정할 수 있는 최소값은 6분 시간 제한 및 5분 샘플링 간격입니다.

    쿼리 작업 항목 태스크에 대한 평가 옵션을 구성하는 방법을 보여 주는 스크린샷

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

    릴리스 파이프라인을 저장하는 방법을 보여 주는 스크린샷

수동 작업 설정

시나리오에 따라 릴리스 파이프라인에 수동 개입을 추가해야 하는 경우가 있습니다. 이 경우 파이프라인에 수동 개입 작업을 추가하면 됩니다.

  1. 파이프라인 릴리스를> 선택합니다. 릴리스 파이프라인을 선택한 다음 작업을 선택하고 스테이지를 선택합니다.

    릴리스 파이프라인에서 스테이지 작업으로 이동하는 방법을 보여 주는 스크린샷.

  2. 줄임표(...)를 선택한 다음 에이전트 없는 작업 추가를 선택합니다.

    에이전트 없는 작업을 추가하는 방법을 보여 주는 스크린샷

  3. 에이전트 없는 작업을 배포 프로세스의 맨 위로 끌어서 놓습니다. (+) 기호를 선택한 다음 수동 개입 작업 추가를 선택합니다.

    수동 개입 작업을 추가하는 방법을 보여 주는 스크린샷

  4. 표시 이름 및 작업이 트리거될 때 표시될 지침을 입력합니다. 시간 제한 기간 내에 개입이 발생하지 않은 경우 알림을 받을 사용자 목록과 시간 제한 작업(거부 또는 다시 시작)을 지정할 수도 있습니다.

    수동 개입 작업을 구성하는 방법을 보여 주는 스크린샷.

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

참고 항목

수동 개입 작업은 에이전트 없는 작업에서만 사용할 수 있습니다.

수동 유효성 검사 설정

YAML 파이프라인에서 수동 유효성 검사 작업을 사용하여 수동 승인을 위해 일시 중지하고 기다릴 수 있습니다. 수동 유효성 검사는 계산 집약적인 작업을 시작하기 전에 구성 설정 또는 빌드 패키지의 유효성을 검사하려는 시나리오에서 특히 유용합니다.

작업은 waitForValidation 실행을 일시 중지하고 UI 프롬프트를 트리거하여 작업을 검토하고 유효성을 검사합니다. 나열된 notifyUsers 이메일 주소는 파이프라인 실행을 승인하거나 거부하는 알림을 받습니다.

수동 유효성 검사 프롬프트를 보여 주는 스크린샷

pool: 
   vmImage: ubuntu-latest

jobs:
- job: waitForValidation
  displayName: Wait for external validation  
  pool: server    
  timeoutInMinutes: 4320 # job times out in 3 days
  steps:   
   - task: ManualValidation@0
     timeoutInMinutes: 1440 # task times out in 1 day
     inputs:
         notifyUsers: |
            someone@example.com
         instructions: 'Please validate the build configuration and resume'
         onTimeout: 'resume'

배포 로그 보기

배포 로그는 배포 문제를 디버그하는 데 유용하지만 파이프라인 실행을 감사하고 승인을 확인하는 데 사용할 수도 있습니다.

  1. 파이프라인 릴리스를> 선택한 다음 릴리스 파이프라인을 선택합니다.

    릴리스 정의 목록을 보여 주는 스크린샷

  2. 이 보기는 파이프라인의 각 단계의 라이브 상태 보여 줍니다. 이 예제의 QA 단계는 보류 중인 작업입니다. 다시 시작을 선택합니다.

    QA 단계 보류 중인 개입을 보여 주는 스크린샷.

  3. 메모를 입력한 다음 다시 시작을 선택합니다.

    보류 중인 수동 개입 요청에 응답하는 방법을 보여 주는 스크린샷.

  4. QA 단계 배포가 성공했고 프로덕션 단계에 대해 배포 전 승인이 트리거됩니다.

    다음 단계에 대해 트리거된 배포 전 승인을 보여 주는 스크린샷

  5. 승인을 선택하고 메모를 입력한 다음 승인을 선택하여 배포를 계속합니다.

    보류 중인 승인 요청에 응답하는 방법을 보여 주는 스크린샷

  6. 라이브 상태 릴리스가 계속되기 전에 게이트가 프로덕션 단계에 대해 처리되고 있음을 나타냅니다.

    프로덕션 처리 게이트를 보여 주는 스크린샷.

  7. 릴리스 파이프라인으로 돌아가서 스테이지를 마우스로 가리킨 다음 로그를 선택하여 배포 로그를 봅니다.

    배포 로그에 액세스하는 방법을 보여 주는 스크린샷