코드푸시 롤백 로직 히스토리

설명

롤백 로직 이해

notion image
롤백된 사유를 알 수 있냐는 질문에, 코드푸시 작업자가 단 댓글이다.
링크의 내용들을 통해 대략적인 코드푸시 롤백 동작원리를 이해할 수 있다.

How rollback works?

notion image
 
notion image

Re-try for Rollbacks

과거 (~~ 2018.12)

  • 롤백이 한번 발생하면 문제가 있는 번들이라고 판단한 후, 다시는 시도하지 않는다.

현재 (2018.12 ~~)

  • 문제있는 번들이 아니며, 재시도로 충분히 해결될 수 있는 상황에도 한번 실패했다는 이유로 다시는 해당 버전으로 업데이트를 시도하지 않는 것에 대해 재시도와 관련된 옵션이 추가되었다.
notion image
notion image
{ delayInHours: number; // 마지막 롤백 이후 다시 재시도 하기까지의 시간 maxRetryAttempts: number; // 롤백을 재시도 할 최대 횟수 지정 }
  • delayInHours 이지만 0으로도 설정할 수 있고, 분단위로도 설정할 수 있다.
  • retry는 다음 sync 호출 시에 동작한다.
  • maxRetryAttempts 횟수만큼 재시도를 하되, 재시도 횟수만큼 모두 rollback 된 경우에는 더 이상 해당 패키지로 설치를 진행하지 않는다. (새로운 버전이 올라와야함)
  • 롤백은 여러가지 이유로 발생할 수 있고, 어떤 이유에 의해서 롤백이 된 건지는 따로 기록하지 않는다.