사이트 배포는 왜 이렇게 복잡할까? 아무것도 안 했는데 성공이라고 뜬 자동화

읽기 기능 사용법

듣기는 본문을 읽어 줍니다. 속독은 구절을 차례로 표시하며 속도를 조절할 수 있습니다. 언어 연습은 다른 언어판과 번역을 비교합니다. 저장한 북마크는 이 브라우저의 플레이어 목록에서 다시 열 수 있습니다. 벽돌깨기로 읽기는 글자 하나하나를 벽돌 삼아 깨면서 노는 게임입니다.

이 글 공유하기

이 글 공유하기

광고
광고

Description: 빌드와 Cloudflare Workers의 역할, 배포 실패를 성공으로 표시하는 문제를 쉽게 설명한다.

Introduction

사이트를 한 번 업데이트하는 데 수십 분이 걸리고 결과는 그대로라면 무엇을 의심해야 할까? 파일을 만드는 과정보다 배포 앞에 붙은 확인 단계가 문제일 수 있다.

What is happening?

빌드는 글과 코드를 브라우저에서 사용할 수 있는 파일로 만드는 작업이다. Cloudflare Workers는 요청에 응답하고 필요한 코드를 실행한다. GitHub Actions와 Buildkite는 빌드와 배포 명령을 실행한다. 서로 다른 역할을 전부 ‘워커가 멈췄다’고 부르면 원인을 찾기 어렵다.

The absurd failure

어떤 배포 절차에는 워커에 허락받기, 최신 코드로 전환하기, 다시 실행하기, 변경 사항 확인하기, 무료 사용량 장부 확인하기가 줄줄이 붙어 있었다. 첫 확인이 사용량 제한 때문에 응답하지 않아 건너뛰었더니 다음 확인에서 멈췄다. 그런데 화면에는 ‘성공’. 아무것도 배송하지 않은 택배 회사가 배송 완료 문자를 보낸 셈이다.

How to tell what failed

빨간 오류가 백 개여도 공통 파일 하나가 원인일 수 있다. 반대로 빌드가 성공해도 실제 사이트는 예전 버전을 보여줄 수 있다. 빌드 완료, 업로드 완료, 실제 주소에서 새 버전 표시를 따로 확인해야 한다.

A simpler route

해결 방향은 배포 명령을 단순하게 만드는 것이다. 워커 배포는 공식 명령 하나, 사이트는 빌드와 업로드 명령 하나로 통일한다. 실행하지 않았으면 이유를 남기고 실패로 처리한다. 마지막에는 실제 사이트를 확인한다.

Conclusion

사람의 일을 줄이려고 자동화했는데 사람이 자동화를 돌보느라 바빠졌다. 필요한 것은 감시자 한 명 추가가 아니라 불필요한 관문을 없애는 일이었다.

이 글 공유하기

이 기사가 도움이 되었다면 사이트를 후원할 수 있습니다. 후원하기

광고
광고
광고

하나 더, 뭐 재미있는 거 없어?

다 읽은 김에. 가까운 이야기 몇 편과, 전혀 다르지만 재미있는 이야기를 골랐어요.

  1. 가까운 이야기AI 콘텐츠 공장은 인터넷을 돕나, 어지럽히나
  2. 전혀 다르지만 재미있는춤추는 룸펠슈틸츠헨 밈, 옛날 영화 장면일까?정체는 AI가 만든 가짜 비디오
  3. 시간 넉넉한 줄 알았는데 비행기까지 10분 남았다
  4. 마인크래프트가 엘든 링 안에?AI로 합친 게임은 진짜 플레이될까?
  5. 성인 자녀 휴대폰을 뺏는 부모, 걱정일까 통제일까?

오늘은 이 글

이 글을 읽은 분이 다음에 품는 질문에 각각 답하는 글입니다.

전체 글에서 찾기‘효율화’ 글 더 보기

다른 글 찾기

모든 기사

Mendoi-chan

사이트 운영자

Mendoi-chan

직장과 일상의 불편함을 구조화해 이해하기 쉬운 다음 행동으로 연결하는 글을 씁니다.