1. GitHub Actions
- Github에서 제공하는 CI/CD 자동화 플랫폼
- ✅ Repository에서 발생하는 이벤트를 기준으로 개발과 배포 과정을 자동화하는 도구
- ✅ Github이 제공하는 가상 머신에서 Workflow의 Job을 실행할 수 있음 (Github-hosted runner)
- ➡️ 코드 변경이 발생했을 때, 빌드 - 테스트 - 배포 를 자동화할 수 있음
2. The Components of GitHub Actions

| 구성 요소 | 의미 | 특징 |
| Workflow | 자동화 프로세스 전체 | - 하나 이상의 Job을 실행함 - .github/workflows 경로에 존재함 - yml 문법으로 작성함 |
| Event | Workflow를 실행시키는 트리거 | ex) push, pull_request, issue, workflow_dispatch |
| Job | Workflow 안에서 실행되는 작업 단위 | - 의존성 설정 가능 ex) build job, test job, deploy job |
| Step | Job 안에서 실행되는 개별 단계 | - uses: 이미 만들어진 Action 사용 - run: 직접 shell 명령 실행 |
| Action | 재사용 가능한 사용자 정의 애플리케이션 | - GitHub Marketplace에서 액션을 찾거나 직접 작성할 수 있음 ex) actions/checkout, actions/setup-java |
| Runner | Workflow를 실제로 실행하는 서버 | - github에서 제공함 - 사용자가 직접 지정하여 쓸 수 있음 ex) ubuntu-latest, windows-latest |
3. Understanding the workflow file

name: learn-github-actions
run-name: ${{ github.actor }} is learning GitHub Actions
on: [push]
jobs:
check-bats-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: '14'
- run: npm install -g bats
- run: bats -v
- name : 워크플로우의 이름을 설정합니다.
- run-name : 워크플로우에 생성된 실행의 이름을 설정합니다.
- on: 워크플로우의 트리거를 지정합니다.
- jobs : 워크플로우의 모든 작업을 그룹화합니다.
- check-bats-version : job의 이름을 정의합니다.
- runs-on : 작업이 GitHub에서 호스팅하는 Ubuntu-latest 버전의 Runner로 지정합니다.
- steps : check-bats-version 작업에서 실행되는 모든 단계를 그룹화합니다.
- use : 액션을 사용하여 작업을 수행합니다.
- run : 명령어를 사용하여 작업을 수행합니다.
- steps : check-bats-version 작업에서 실행되는 모든 단계를 그룹화합니다.
- runs-on : 작업이 GitHub에서 호스팅하는 Ubuntu-latest 버전의 Runner로 지정합니다.
- check-bats-version : job의 이름을 정의합니다.
출처
'DevOps > CI&CD' 카테고리의 다른 글
| [Github Actions] 3. Environments (0) | 2026.05.30 |
|---|---|
| [Deployment] 1. Blue-Green 배포 방식 (0) | 2026.05.29 |