GitHub Actions - JavaScript action 만들기
두줄요약
중첩 조건문이 많은 Composite action을 Map 기반 JavaScript action으로 전환했습니다. 의존성 설치·캐시와 GitHub 이벤트 정보 활용 방법도 함께 소개합니다.
문제 상황
- 다수의 env·region 조합에 따른 Shell Script 기반 Composite action의 중첩 조건문 증가
- 배포 입력값을 환경별 언어·서비스 정보로 변환하는 로직의 낮은 가독성
해결 방법
- Composite action을 node16 기반 JavaScript action으로 전환
- env와 region을 키로 하는 중첩 Map에서 값을 조회하고
@actions/core로 입력값·출력값 처리 - 예외 발생 시
core.setFailed로 action 실패 처리
성능/운영 포인트
- 실행 환경의
node_modules부재로 발생하는@actions/core모듈 오류 actions/setup-node,npm ci,actions/cache를 통한 의존성 설치 및 캐시 구성@actions/github으로 트리거된 이벤트 관련 정보 접근
적용해볼 점
- 다차원 조건 분기가 필요한 GitHub Actions 로직의 Map 기반 데이터 조회 전환
- JavaScript action에서 GitHub 이벤트 컨텍스트를 활용한 알림·후속 처리 확장



