목록 보기
GitHub Actions - JavaScript action 만들기
데브옵스

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 이벤트 컨텍스트를 활용한 알림·후속 처리 확장

카카오 계열사 채용30건

채용 사이트에서 전체 보기

다음 읽기

#GitHub Actions 주제를 이어서 읽기

GitHub Actions - JavaScript action 만들기

조건문이 많은 Composite action을 Map 기반 JavaScript action으로 리팩터링하는 과정을 정리했습니다. @actions/core, @actions/github와 캐싱을 활용해 GitHub Actions에서 안정적으로 실행하는 방법도 다뤘습니다.

카카오엔터테인먼트FE
카카오엔터테인먼트FE
데브옵스

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...