← 홈Setup Tip

Setup Tip

Setup Tip — 상태 문구 대신 리비전·주소·응답 한 벌을 기록하기

빌드나 배포가 성공 상태를 남기는 것과 산출물을 증명하는 것은 다른 일이다. 불변 리비전 식별자, 정확한 대상 주소, 변경 이후에 잡은 실제 응답 하나를 한 기록으로 남기면 상태 문구가 아니라 증거로 검증할 수 있다.

문제

범위가 정해진 빌드나 배포 단계는 끝날 때 작업 이름 옆에 “성공”을 남기는 경우가 많다. 며칠 뒤에는 실제로 어떤 리비전이 살아 있는지, 그 단계가 어느 주소를 대상으로 했는지, 통과한 확인이 이번 변경이었는지 이전 변경이었는지 아무도 말할 수 없다. 상태 문구는 실행을 가리킬 뿐 산출물을 가리키지 않는다.

운영 패턴

1. 작업을 시작하기 전에 반드시 남아야 할 세 가지를 먼저 적는다. 빌드하거나 배포하는 대상의 불변 리비전, 영향을 주장하는 정확한 주소, 그리고 변경 이후에 잡은 실제 응답 하나.

2. 작업은 제한된 범위로 실행한다. 빌드 하나, 배포 대상 하나, 확인 하나. 그래야 증거가 다른 변경을 덮지 못한다.

3. 작업이 끝나면 리비전을 산출물이 스스로 부르는 식별자 그대로 적는다. 다시 계산해도 같은 값이 나오는 커밋 해시나 콘텐츠 요약이고, “최신” 같은 표현은 쓰지 않는다.

4. 정확히 그 주소에서 실제 응답 하나를 잡아 저장한다. 상태 줄과 함께, 이 리비전에서만 나올 수 있는 표식을 응답 본문에서 하나 찾아 리비전 옆에 함께 남긴다.

5. 이 세 가지가 하나로 묶인 기록이 완료 기록이다. 하나라도 비면 상태가 어떻든 작업은 증명되지 않은 것이다.

왜 중요한가

상태 문구와 증거의 차이는 가리키는 대상에 있다. 문구는 실행을 가리키고 증거는 산출물을 가리킨다. 이 리비전이 이 주소에서 이렇게 응답했다는 세 사실이 함께 남으면, 나중에 문제가 생겼을 때 산출물이 주장과 일치하는지만 물으면 된다. 로그를 다시 읽으며 논쟁할 필요가 없다.

완료 기준

불변 리비전, 정확한 주소, 그 리비전에서만 나올 수 있는 표식이 보이는 실제 응답 하나. 세 가지가 한 기록에 모두 들어 있어야 작업이 증명된 것이다. 그보다 적은 것은 증거가 아니라 상태다.