깃허브 액션이란 무엇이며 사용하는 방법은?

2025. 5. 19. 21:38·개발/Git

안녕하세요. 휘입니다. 요즘 간단한 프로그램을 만들어 자동화 솔루션으로 사용하고 있는데요. 하루에 한 두번 정도 사용하는 프로그램을 위해 별도의 리소스를 마련하는 것도 번거로운 일이 아닐 수 없습니다.

 

이럴 때는 깃허브에서 제공하는 무료 자동화 서비스인 '깃허브 액션'을 활용할 수 있는데요. 깃허브 액션을 사용하면 원하는 이벤트(푸시, 풀 리퀘스트 등)에 대해 자동으로 코드가 실행되도록 할 수 있습니다.

깃허브 액션이란?

깃허브 액션(GitHub Actions)는 깃허브에서 제공하는 자동화 솔루션입니다. 프로그램을 개발하고 구동하는 과정에서 반복되는 작업을 자동으로 처리할 수 있게 도와주는데요.

 

예를 들어, 코드가 푸시되면 자동으로 테스트를 실행하거나, 특정 브랜치에 변경 사항이 병합되면 자동으로 배포가 되도록 설정할 수 있습니다.

깃허브 액션의 주요 구성 요소

1. 워크플로우 (Workflow)

워크플로우는 자동화된 프로세스를 정의하는 것으로, .github/workflows 디렉토리에 YAML 파일 형식으로 저장됩니다. 각 워크플로우는 특정 이벤트에 의해 트리거되며, 여러 개의 잡(Job)으로 구성될 수 있습니다.

2. 이벤트 (Event)

이벤트는 워크플로우를 트리거하는 깃허브의 활동입니다. 예를 들어, 코드 푸시(push), 풀 리퀘스트 생성(pull_request), 이슈 생성(issues) 등이 있습니다.

3. 잡 (Job)

잡은 워크플로우 내에서 실행되는 작업 단위로, 여러 개의 스텝(Step)으로 구성됩니다. 각 잡은 독립적으로 실행되거나 다른 잡에 의존성을 가질 수 있습니다.

4. 스텝 (Step)

스텝은 잡 내에서 실행되는 개별 작업으로, 스크립트 실행이나 액션 호출 등을 포함합니다.

5. 액션 (Action)

액션은 내부의 코드 조각으로, 스텝에서 호출되어 특정 작업을 수행합니다. 직접 액션 스크립트를 짜거나 마켓플레이스에서 다양한 액션을 찾아 사용할 수 있습니다.

6. 러너(Runner)

러너는 워크플로우를 실행하는 환경으로, 깃허브에서 제공하는 호스티드 러너(GitHub-hosted runner)와 사용자가 직접 설정하는 셀프 호스티드 러너(Self-hosted runner)가 있습니다.

깃허브 액션은 어떻게 사용하나요?

깃허브 액션은 목적에 따라 다양하게 사용할 수 있습니다. 예를 들어, 아래는 코드 푸시 시 자동으로 테스트를 실행하는 워크플로우의 예시입니다.

name: Node.js CI

on:
  push:
    branches: [ main ]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
    - name: Use Node.js
      uses: actions/setup-node@v2
      with:
        node-version: '14'
    - run: npm install
    - run: npm test

해당 워크플로우는 main 브랜치에 코드가 푸시되면 자동으로 실행되며, Node.js 환경을 설정하고, 의존성을 설치한 후 테스트를 수행합니다.

깃허브 액션의 다양한 활용 방법

1. CI/CD 파이프라인 구축

깃허브 액션을 활용하여 코드 변경 시 자동으로 빌드, 테스트, 배포를 수행하는 CI/CD 파이프라인을 구축할 수 있습니다. 이를 통해 개발 프로세스의 효율성과 일관성을 높일 수 있습니다.

2. 코드 품질 관리

코드 푸시 시 자동으로 린트(Lint)나 포맷터를 실행하여 코드 스타일을 검사하고, 품질을 유지할 수 있습니다.

3. 이슈 및 풀 리퀘스트 관리

이슈나 풀 리퀘스트 생성 시 자동으로 라벨을 추가하거나, 환영 메시지를 댓글로 남기는 등의 자동화를 구현할 수 있습니다.

마치며

깃허브 액션은 개발 프로세스의 자동화를 통해 효율성을 높이고, 일관된 품질을 유지하는 데 큰 도움이 되는 도구입니다. 깃허브 액션을 사용하면 다양한 이벤트에 자동으로 반응하는 작업을 설정할 수 있습니다. 보다 자세한 정보는 GitHub Actions 공식 문서에서도 확인하실 수 있습니다.

'개발 > Git' 카테고리의 다른 글

크론(Cron) 표현식 개념 및 사용 방법  (13) 2024.08.22
깃랩 사용법 (4) 브랜치 및 커밋, 머지 명령어 설명  (0) 2020.10.15
깃랩 사용법 (3) 기본 명령어 정리  (0) 2020.10.15
'개발/Git' 카테고리의 다른 글
  • 크론(Cron) 표현식 개념 및 사용 방법
  • 깃랩 사용법 (4) 브랜치 및 커밋, 머지 명령어 설명
  • 깃랩 사용법 (3) 기본 명령어 정리
  • 깃랩 사용법 (2) 깃 기본 용어 정리
휘Hwi
휘Hwi
여행, 사진, 개발, 책 이야기를 기록하는 여행자 휘의 블로그 𓂍
마이리얼트립 프로모션 할인 🏝️
마이리얼트립 호텔 예약 배너
※ 배너를 클릭하여 상품 구매 시, 파트너스 활동에 대한 소정의 수수료를 지급받습니다. 구매자에게 추가로 부과되는 수수료는 없습니다.
  • 휘Hwi
    휘: 끝나지 않은 이야기
    휘Hwi
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • 기록
        • 일상 에세이
        • 인사이트
        • 투자와 재테크
        • 코인 이야기
        • 아카이빙
        • 집무실 레터
        • 사랑에 대하여
        • 번역 이야기(完)
        • 프리랜서 일지(完)
      • 여행 N
        • 🌎 세계 여행기 S1 (完)
        • 🌊 삼삼한 여행기 (完)
        • 🚶 온더로드
        • 🇯🇵 일본
        • 🏝️ 발리
        • 🇻🇳 베트남 N
        • 🇱🇰 스리랑카
        • 🇮🇳 인도
        • 🇹🇭 태국
        • 🇸🇬 싱가포르
        • 🇦🇺 호주
        • 🇭🇰 홍콩
        • 🇰🇷 한국
        • 🍚 여행자의 한 끼
        • ℹ️ 여행 정보
      • 사진
        • 사진가
        • 사진 이론과 생각
        • 사진 관련 정보
      • 영상
        • 파이널컷 모션 공부
        • 고프로 GoPro
        • 영상 관련 정보
      • 책
        • 책 읽고 쓰기
      • 개발
        • 티스토리
        • Internet
        • HTML
        • CSS
        • JavaScript
        • Typescript
        • React
        • Node.js
        • Express
        • NestJS
        • Python
        • Django
        • MySQL
        • MongoDB
        • AWS
        • Deployment
        • Terminal
        • Git
        • Glossaries
        • Articles
        • Projects
        • TIL;
      • 미분류
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
휘Hwi
깃허브 액션이란 무엇이며 사용하는 방법은?
상단으로

티스토리툴바