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

Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018

참고

Microsoft TFS(Team Foundation Server) 2018 이하 버전에서 빌드 및 릴리스 ‘파이프라인’은 ‘정의’라고 하며 ‘실행’은 ‘빌드’, ‘서비스 연결’은 ‘서비스 엔드포인트’, ‘스테이지’는 ‘환경’, ‘작업’은 ‘단계’라고 합니다.

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

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

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

사전 요구 사항

게이트 설정

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

  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 단계는 작업 보류 중입니다. 다시 시작 을 선택 합니다.

    단계 작업 보류 중

  3. 사용자 의견을 입력 한 다음 다시 시작 을 선택 합니다.

    작업 다시 시작

  4. 릴리스 파이프라인으로 돌아갑니다. QA 단계가 성공적으로 배포 되 고 배포 전 승인이 프로덕션 단계에 대해 트리거됩니다.

    다음 단계에 대해 배포 전 승인이 트리거됨

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

    배포 승인

  6. 릴리스 파이프라인으로 돌아갑니다. 라이브 상태는 릴리스가 계속 되기 전에 문이 프로덕션 단계에 대해 처리 되 고 있음을 나타냅니다.

    상태: 게이트 처리 중

  7. 릴리스 파이프라인으로 돌아가서 감사 하려는 단계를 가리킨 다음 로그를 선택 하 여 로그를 확인 합니다.

    로그 보기

다음 단계