Skip to content

진보적 롤아웃

A progressive rollout keeps a channel’s __CAPGO_KEEP_0__ in place while delivering a separate rollout target to a controlled subset of devices. It is useful when you want real production validation without switching the whole channel at once. Progressive rollout controls in a __CAPGO_KEEP_0__ channel Configure the rollout target, percentage, cache duration, and auto-pause policy from a channel’s Information tab. How progressive rollouts work Section titled “How progressive rollouts work”

Progressive rollout controls in a Capgo channel
Stable bundle

Progressive rollout 제어는 채널의 정보 탭에서 rollout target, 퍼센티지, 캐시 지속 시간 및 자동 중단 정책을 구성할 수 있습니다.

  • Progressive rollout은 어떻게 작동하는가 Progressive rollout은 어떻게 작동하는가에 대한 설명입니다.
  • 배포 대상 — 점진적으로 릴리스되는 후보 버전입니다.

롤아웃은 안정적인 버전이 필요합니다. 대시보드에서 안정적인 버전을 할당한 후에 대상 선택; Public API 에서 기존 채널이 제공할 수 있습니다 version 그리고 rolloutVersion Capgo은 POST 요청에서 동일한 기존 채널을 사용할 수 있습니다. Capgo은 각 기기에 대한 무작위 결정을 하며, 기기 ID와 롤아웃 ID의 해시를 사용하여 캐시합니다. 이는 캐시 지속 기간 동안 계열을 고정시키는 대신 업데이트를 확인할 때마다 계열이 변경되지 않도록 합니다.

퍼센트 변화

퍼센트 변화

Capgo은 기존의 결정을 보존할 수 있습니다:

  • 퍼센트 증가 — 선택된 기기들은 선택되며, 이전에 선택되지 않은 기기 중에서 무작위로 선택된 부분만 추가됩니다.
  • 퍼센티지 감소 — 선택된 그룹 중에서 무작위로 선택된 일부가 안정 버전으로 돌아갑니다.
  • 퍼센티지 0%로 설정 — 새로운 기기가 선택되지 않습니다. 이미 활성화된 롤아웃 대상으로 실행 중인 기기는 활성화, 롤백, 또는 대상 변경을 할 때까지 계속해서 해당 대상으로 업데이트 받습니다.
  • 정지 — 새로운 기기가 롤아웃 대상에 들어오지 않도록 하며, 이미 활성화된 대상으로 실행 중인 기기는 그대로 유지됩니다.
  • 비활성화 — 롤아웃 대상이 더 이상 해결되지 않으며, 업데이트 확인은 안정 버전을 사용합니다.

롤아웃 실행

롤아웃 실행
  1. 테스트 버전을 업로드하고 채널의 안정 버전으로 assignment합니다.
  2. __CAPGO_KEEP_0__ 예시
  3. __CAPGO_KEEP_0__ 정보 목표 , 작은 비율을 선택하고 롤아웃을 활성화합니다.__CAPGO_KEEP_0__
  4. __CAPGO_KEEP_0__ 로그 인사이트, 채널 기록만약 건강하지 않다면, 중단하거나 롤백하세요.
  5. __CAPGO_KEEP_0__

배포 시작 1.3.0 5%:

터미널 창
npx @capgo/cli@latest channel set production com.example.app \
--rollout-bundle 1.3.0 \
--rollout-percentage 5 \
--rollout-enable

이미 선택된 기기 재설정 없이 증가 시키기:

터미널 창
npx @capgo/cli@latest channel set production com.example.app \
--rollout-percentage 25

채널이 이미 안정 버전의 배포를 가지고 있는 경우, 업로드 명령어는 한 번에 업로드를 배포 목표로 설정할 수 있습니다.

터미널 창
npx @capgo/cli@latest bundle upload com.example.app \
--path ./dist \
--channel production \
--rollout 5

자세한 내용 보기 채널 CLI 참조 그리고 배포 CLI 참조 모든 배포 옵션에 대해

중단, 되돌리기, 또는 승격

중단, 되돌리기, 또는 승격 섹션
액션무엇을 하는가
중단새로운 기기들이 배포에 들어가지 못하게 한다. 이미 활성화된 대상 기기들은 그 상태로 유지된다.
재개새로운 자격이 있는 기기들이 다시 들어가게 한다.
비활성화.rollout 대상이 안정 버전으로 설정되고 rollout 상태가 초기화됩니다.
되돌리기rollout 상태를 초기화하고 안정 버전으로 되돌립니다.
업그레이드안정 버전으로 rollout 대상이 설정되고 rollout 상태가 초기화됩니다.

한 번에 하나의 터미널 명령어만 사용하세요:

터미널 창
# Stop adding devices while you investigate
npx @capgo/cli@latest channel set production com.example.app --rollout-pause
# Make the candidate stable for everyone
npx @capgo/cli@latest channel set production com.example.app --rollout-promote
# Discard the candidate and return to stable
npx @capgo/cli@latest channel set production com.example.app --rollout-rollback

목표 버전을 삭제하지 마세요. 안정 버전 또는 rollout 대상으로 설정된 버전은 삭제되지 않습니다.

자동 중단 정책

자동 중단 정책

Capgo은 활성화된 롤아웃을 매 5분마다 평가하고, 실패 신호가 임계값을 넘어설 때 행동합니다. 롤아웃 대상의 설치 및 실패를 채널과 시간 창에 따라 측정한 후, 윌슨 신뢰 하한을 사용하여 단순한 실패율만 사용하는 대신 사용합니다.

자동 중단이 기본적으로 비활성화되어 있습니다. 채널의 정보 탭 또는 channel set:

  • 실패율 임계값 을 바탕으로 (500 = 5%). 임계값은 정책을 트리거하기 위해 필요합니다.
  • 시간 창 분 (기본값: 60).
  • 신뢰도 사이 01 기본값: 0.95).
  • 선택적 최소 시도 및 실패 횟수, 작은 샘플을 피하기 위해 동작하지 않도록 막습니다.
  • Cooldown 분 단위 (기본값: 60), 반복적인 동작을 막습니다.
  • 액션: pause, rollback또는 notify.

pause 새로운 롤아웃 노출을 중단하고, rollback 목표를 초기화하고 안정 상태로 돌아가며, notify 롤아웃 알림을 보내고 롤아웃 전달을 변경하지 않습니다.

터미널 창
npx @capgo/cli@latest channel set production com.example.app \
--auto-pause-enabled \
--auto-pause-failure-rate-bps 500 \
--auto-pause-window-minutes 60 \
--auto-pause-confidence 0.95 \
--auto-pause-min-attempts 100 \
--auto-pause-min-failures 5 \
--auto-pause-action pause \
--auto-pause-cooldown-minutes 120

API 및 대시보드 제어

API 및 대시보드 제어

__CAPGO_KEEP_0__을 통해 동일한 기능을 관리할 수 있습니다. API __CAPGO_KEEP_0__ 또는 대시보드:

  1. 앱을 열고 채널.
  2. 채널을 선택하세요.
  3. 정보 __CAPGO_KEEP_0__을 사용하세요..
  4. 진행적 롤아웃 선택한 대상, 백분율, 캐시 기간 및 자동 중단 정책을 설정하세요. __CAPGO_KEEP_0__

일반 채널 라우팅과 장치 우선 순위에 대해 보려면 채널긴급 배포를 위한 에러 복구에 대해 보려면 실시간 업데이트 롤백.