본문 바로가기

Git

[GitHub Actions] 코드 저장소에 CI 구성하기

지금 진행하고 있는 프로젝트에서 가장 흥미롭게 배운 기술은 깃허브 액션입니다.
코드를 푸쉬할 때마다 자동으로 검사, 빌드, 배포되는 워크플로우, 신기하지 않나요?


GitHub Actions

깃허브 액션은 소프트웨어 개발 워크플로우를 자동화할 수 있는 강력한 도구입니다.
간단히 말해, 여러분의 깃허브 저장소에서 직접 CI/CD 파이프라인을 구축할 수 있습니다.
깃허브 액션은 다음과 같은 주요 특징이 있습니다.

  • 코드 저장소 내에서 워크플로우 정의 가능
  • YAML 파일로 쉽게 설정 가능
  • push와 pull 등 다양한 트리거 지원

 

실제 적용

아래는 제가 직접 프로젝트에 적용한 YAML 파일입니다.

name: pr-validation

# PR이 생성되거나 업데이트될 때 실행
on:
  pull_request:
    branches:
      - main

jobs:
  setup:  # 의존성 설치
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3  # 코드 체크아웃
      - uses: actions/setup-node@v3  # 최신 LTS 버전의 노드 설치
        with:
          node-version: '22.x'
      - run: npm ci

  lint:  # lint 검사
    needs: setup  
    runs-on: ubuntu-latest
    steps:
      - run: npm run lint

  build:  # typecheck와 build
    needs: setup
    runs-on: ubuntu-latest
    steps:
      - run: npm run build

자주 사용했던 태그 몇가지만 알아보겠습니다.

  • name: 워크플로우 이름 정의
  • on: 워크플로우를 트리거 하는 이벤트 지정
  • jobs: 워크플로우에서 실행될 작업들
  • runs-on: 작업이 실행될 러너의 운영체제 지정
  • needs: 다른 잡의 완료를 기다리거나 의존성 설정
  • steps: 잡에서 실행되는 개별 작업들
  • run: 셸 명령어를 직접 입력

처음 깃허브 액션을 접했을 때는 YAML 문법과 액션들이 조금 어렵게 느껴졌어요.
하지만 점점 익숙해지면서 깃허브 액션의 강력한 힘을 느끼게 되었습니다.

글을 끝까지 봐주셔서 감사합니다.
틀린 내용이 있다면 댓글로 지적 부탁드립니다.

'Git' 카테고리의 다른 글

[GitHub] 커밋 컨벤션을 알아보자  (0) 2024.11.27
[GitHub] 깃 이슈 알아보기  (0) 2024.11.26
브랜치 전략과 병합  (0) 2024.08.16
원격 브랜치 생성  (0) 2024.08.16
Branch 알아보기  (0) 2024.08.14