업무 관련 툴

[Mac OS]GitHub Action을 이용한 Node.js CI

chanstory 2023. 1. 12. 21:50
반응형

 

Github Action 이란?

- GitHub 에서 제공하는 CI/CD (지속적 통합, 지속적 배포) 를 위한 서비스

- 특정 이벤트가 발생했을때 특정 작업을 수행하여 주기적으로 어떠한 작업들을 반복적으로 수행할 수 있다.

- 자동으로 각종 테스트 및 검사를 진행하여 오류 검출 및 정상 동작 확인이 가능하다

   (휴먼 에러를 줄이며 빠른 배포를 가능케 한다)

 

1. git hub Repository 에서 우측 상단 Add file 을 통하여 CI를 생성한다.

- Create new file

 

2. Edit new file 에 CI 관련 내용을 작성한다. 

 

3. 혹은 Action -> New workflow 를 통하여 여러 템플릿 중 하나를 선택한다.

 

4. node.js.yml 파일의 템플릿이다.

 

5. 작성 완료 후 Start commit 

 

6. 작성한 CI코드에 맞게 이벤트 발생 시 자동으로 테스트 및 오류 내용 생성

 

7. 빌드 실패 관련 이슈 내용 확인 가능 

 

name: Node.js CI

on:             // 해당 이벤트 트리거
  push:
    branches: [ "master" ]
  pull_request:
    branches: [ "master" ]

jobs:
  build:

    runs-on: ubuntu-latest     // 빌드 운영체제

    strategy:
      matrix:
        node-version: [14.x, 16.x, 18.x]     // 노드 사용 버전
        # See supported Node.js release schedule at https://nodejs.org/en/about/releases/

    steps:
    - uses: actions/checkout@v3        // 액션 버전 
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v3
      with:
        node-version: ${{ matrix.node-version }}
        cache: 'npm' 
    - run: npm ci                                  // run : 테스트 내용
    - run: npm run build --if-present
    - run: npm test

반응형