GitHub Actions 입문
워크플로, 이벤트, 작업, 단계 등 GitHub Actions의 핵심 개념을 이해하세요.
GitHub Actions 입문은(는) CoddyKit의 무료 DevOps Bootcamp 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 DevOps Bootcamp 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
GitHub Actions 입문
GitHub Actions에 오신 것을 환영합니다! GitHub의 이 강력한 기능을 사용하면 저장소에서 바로 작업을 자동화할 수 있습니다.
코드를 위한 개인 로봇 도우미라고 생각해 보세요. 프로젝트를 빌드하고, 테스트를 실행하고, 변경할 때마다 웹 사이트를 자동으로 배포할 수도 있습니다.
이 레슨에서는 워크플로, 이벤트, 작업, 단계라는 핵심 개념을 살펴보겠습니다.
워크플로: 자동화 설계도
GitHub Actions의 중심에는 워크플로가 있습니다. 워크플로는 하나 이상의 작업을 실행하는 자동화된 절차입니다.
- 워크플로는 YAML 파일에 정의합니다.
- 이 파일은 저장소의
.github/workflows디렉터리에 저장됩니다. - 각 워크플로 파일은 별도의 자동화 프로세스를 나타냅니다.
코드를 푸시하는 것과 같은 특정 이벤트가 발생하면 워크플로가 실행됩니다!
워크플로 파일의 구조
GitHub Actions 워크플로는 사람이 읽기 쉬운 데이터 직렬화 표준인 YAML로 작성합니다. 기본 구조는 다음과 같습니다.
name: My First Workflow
on: [push]
jobs:
my_first_job:
runs-on: ubuntu-latest
steps:
- name: Greet Me
run: echo "Hello CoddyKit!"이벤트: 자동화를 시작하는 트리거
이벤트는 워크플로 실행을 시작하는 특정 활동입니다. 이벤트는 GitHub Actions에 자동화 프로세스를 언제 시작할지 알려 줍니다.
일반적인 이벤트는 다음과 같습니다.
push: 코드를 저장소에 푸시할 때 발생합니다.pull_request: 풀 리퀘스트를 열거나 업데이트하거나 닫을 때 발생합니다.schedule: 특정 시간에 실행할 때 사용합니다(크론 작업과 비슷합니다).
워크플로 파일에서 on: 키워드를 사용해 하나 이상의 이벤트를 지정할 수 있습니다.
name: On Push Example
on: [push, pull_request] # This workflow runs on push or pull request events
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Run a simple command
run: echo "Code was pushed or PR updated!"작업: 체계적으로 구성된 작업
작업은 동일한 실행기에서 실행되는 단계의 모음입니다. 워크플로는 하나 이상의 작업으로 구성되며, 작업은 병렬 또는 순차적으로 실행할 수 있습니다.
- 각 작업은
runs-on으로 지정한 가상 환경의 새 인스턴스에서 실행됩니다. - 일반적인
runs-on값으로는ubuntu-latest,windows-latest,macos-latest가 있습니다.
작업에서는 애플리케이션 빌드나 테스트 실행처럼 수행해야 할 일을 정의합니다.
단계: 개별 지침
작업 내에서 단계는 실행되는 개별 작업입니다. 단계는 다음과 같은 형태일 수 있습니다.
- 명령줄 스크립트(
run사용) - 액션(
uses사용) – 재사용 가능한 코드 조각
단계는 정의된 순서대로 실행됩니다. 한 단계가 실패하면 기본적으로 작업도 실패하고 이후 단계는 건너뜁니다.
name: Steps Demo
on: [push]
jobs:
my_job:
runs-on: ubuntu-latest
steps:
- name: Step 1: Say Hello
run: echo "Hello from Step 1!"
- name: Step 2: List files
run: ls -la
- name: Step 3: Echo another message
run: echo "Step 3 completed."액션: 재사용 가능한 코드 블록
액션은 자동화를 구성하는 가장 세분화된 단위입니다. 액션은 특정 작업을 수행하는 재사용 가능한 코드 조각입니다.
일반적인 작업을 위해 복잡한 스크립트를 직접 작성하는 대신 GitHub Marketplace의 기존 액션을 사용하거나 직접 만들 수 있습니다.
uses:키워드를 사용해 액션을 참조합니다.- 액션은 GitHub(예:
actions/checkout), Docker 이미지 또는 JavaScript 파일에서 가져올 수 있습니다.
이를 통해 시간을 절약하고 일관성을 높일 수 있습니다!
name: Using Actions
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository code
uses: actions/checkout@v4 # This action checks out your repo
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm install전체 워크플로 만들기
지금까지 배운 내용을 하나의 실행 가능한 워크플로 예제로 합쳐 보겠습니다. 이 워크플로는 코드를 체크아웃하고 인사말을 출력하는 간단한 작업을 수행합니다.
이 YAML 파일은 저장소의 .github/workflows/greeting.yml로 저장합니다.
name: Simple Greeting Workflow
on: [push] # Triggers on any push to the repository
jobs:
greet_job:
runs-on: ubuntu-latest # Runs on a fresh Ubuntu virtual machine
steps:
- name: Checkout the repository
uses: actions/checkout@v4 # Action to get your code
- name: Say hello
run: echo "Hello, GitHub Actions User!" # A simple command-line step
- name: Show current directory
run: pwd # Another command to show where we are워크플로 실행 방식
push와 같은 이벤트가 발생하면 GitHub Actions는 다음 작업을 수행합니다.
.github/workflows/에서 관련 워크플로 YAML 파일을 읽습니다.- 각 작업에 대해 가상 머신(실행기)을 초기화합니다.
- 작업 내 각 단계를 순차적으로 실행합니다.
- 각 단계와 전체 작업의 상태(성공/실패)를 보고합니다.
저장소의 GitHub "Actions" 탭에서 이 과정을 모니터링할 수 있습니다.
빠른 확인: 워크플로 구성 요소
다음 중 GitHub Actions 워크플로 파일에 포함되는 필수 구성 요소는 무엇인가요?
복습: GitHub Actions 입문
잘하셨습니다! GitHub Actions의 기초 개념을 배웠습니다.
- 워크플로: YAML 파일에 작성하는 자동화 설계도입니다.
- 이벤트: 워크플로를 시작하는 트리거입니다.
- 작업: 실행기에서 실행되는 단계의 모음입니다.
- 단계: 개별 명령 또는 재사용 가능한 액션입니다.
- 액션: 일반적인 작업에 사용하는 재사용 가능한 작업 단위입니다.
다음에는 더 실용적인 CI/CD 워크플로를 만드는 방법을 살펴보겠습니다!
자주 묻는 질문
“GitHub Actions 입문” 강의는 무료인가요?
네 — “GitHub Actions 입문” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 DevOps Bootcamp 강의 전체를 잠금 해제할 수 있습니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
“GitHub Actions 입문”에서 뭘 배우나요?
워크플로, 이벤트, 작업, 단계 등 GitHub Actions의 핵심 개념을 이해하세요. 브라우저에서 직접 실행하는 실습 코드로 DevOps Bootcamp을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
DevOps Bootcamp을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 DevOps Bootcamp은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“GitHub Actions 입문” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 DevOps Bootcamp 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 DevOps Bootcamp 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- GitHub Actions 입문
- CI/CD 워크플로 구축
- 사용자 지정 액션 및 마켓플레이스
- Actions의 보안 비밀과 환경 변수