카카오웹툰, workflow_dispatch와 inquirer.js로 배포 자동화 개선
·2022.09.29 09:00
핵심 내용
브랜치 생성 없이 터미널에서 region과 env를 선택해 GitHub Actions를 실행하는 방식이다.
1 / 5
자세히 보기
카카오웹툰 프론트엔드 팀이 기존 브랜치 push 기반 배포 방식의 번거로움을 해결하기 위해 workflow_dispatch와 inquirer.js를 활용한 새로운 배포 프로세스를 공개했다. 기존 방식은 배포 시 로컬에서 브랜치를 최신화하고 새로운 배포 브랜치를 생성해 push해야 하는 복잡한 절차가 필요했다.
새로운 방식은 GitHub Actions의 workflow_dispatch 이벤트를 사용해 로컬 터미널에서 원격 workflow를 수동으로 트리거한다. GitHub CLI(gh)를 통해 workflow를 실행하며, 배포에 필요한 region과 env 값을 인자로 전달한다. 이를 통해 브랜치 파싱이나 별도 브랜치 생성 과정이 제거되었다.
사용자 경험 개선을 위해 inquirer.js 라이브러리를 도입했다. 터미널에서 배포할 브랜치, 리전(kor, twn, tha, idn), 환경(sandbox, cbt, prod)을 직관적인 UI로 선택할 수 있게 했다. 선택된 값은 deploy.js 스크립트를 통해 gh workflow run 명령어에 동적으로 주입되어 workflow가 실행된다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.