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

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

이상 현상 찾기
읽기 기능 사용법

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

이 글 공유하기

이 글 공유하기

광고
광고

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

Introduction

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

What is happening?

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

The absurd failure

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

How to tell what failed

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

A simpler route

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

Conclusion

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

한 걸음 더: 익명 블로그가 너무 커지면 내가 쓴 거라고 말할 수 없다

광고이 주제의 책

  • Deep Work (영어판)

    Cal Newport / Grand Central Publishing / 2016

    이 글의 분야인 생산성에 관한 책입니다.

이 글에는 광고(제휴 링크)가 포함되어 있습니다. 광고 안내 자세히 As an Amazon Associate I earn from qualifying purchases.

이 글 공유하기

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

광고
광고
광고

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

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

  1. 가까운 이야기내 글은 왜 검색 상위에 안 뜰까?모든 페이지를 개선하는 올바른 순서
  2. 광고 1,208번 보여주고 0.11달러, 39번에 0.80달러? 수익이 안 느는 이유
  3. 전혀 다르지만 재미있는“모든 걸 전력으로”가 진짜인 사람을 만났다
  4. 30분 깜빡 잠들면 수면 압력이 초기화될까?갑작스러운 졸음의 진실
  5. 룸펠슈틸츠헨 춤은 무슨 옛날 영화 장면일까?
  6. 80억 분의 1 엔딩 총정리최고는 97세 과학자, 최악은 29세 사고사?

오늘은 이 글

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

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

다른 글 찾기

모든 기사

Mendoi-chan

사이트 운영자

Mendoi-chan

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