빌드 작업 정의 (Define a build job)
먼저, 집중적인 build 작업을 갖도록 기존 워크플로우를 정리하겠습니다. 명확성을 위해 이전 실습의 매트릭스 전략 (matrix strategy) 을 단순화하고, 작업 종속성 (job dependencies) 에 초점을 맞추기 위해 단일 버전으로 되돌아갑니다.
github-actions-demo의 GitHub 저장소 페이지에서 녹색 Code 버튼을 클릭합니다.
- HTTPS 탭이 선택되었는지 확인하고 URL 을 복사합니다. URL 은
https://github.com/your-username/github-actions-demo.git과 유사해야 합니다.
- LabEx 환경에서 터미널을 엽니다. 기본 경로는
~/project입니다.
git clone 명령을 사용하여 저장소를 다운로드합니다. your-username을 실제 GitHub 사용자 이름으로 바꾸십시오.
cd ~/project
git clone https://github.com/your-username/github-actions-demo.git
예시 출력:
Cloning into 'github-actions-demo'...
remote: Enumerating objects: X, done.
remote: Counting objects: 100% (X/X), done.
remote: Total X (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (X/X), done.
- 복제된 저장소로 이동합니다:
cd ~/project/github-actions-demo
-
WebIDE 편집기를 사용하여 새 워크플로우 파일 .github/workflows/job-dependencies.yml을 생성합니다. 파일 탐색기에서 왼쪽의 project/github-actions-demo/.github/workflows/ 아래에서 파일을 찾을 수 있습니다.
-
기본 워크플로우 구조를 생성하는 것으로 시작합니다. 워크플로우 이름과 트리거를 추가합니다:
name: Job Dependencies
on: [push]
jobs 섹션을 추가하고 실행기 (runner) 와 함께 빌드 작업을 정의합니다:
jobs:
build:
runs-on: ubuntu-latest
steps 섹션을 추가합니다. 먼저, 저장소 코드를 가져오기 위한 checkout 단계를 추가합니다:
steps:
- uses: actions/checkout@v4
- Node.js 설정 단계를 추가합니다:
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- 종속성을 설치하는 단계를 추가합니다:
- name: Install dependencies
run: npm install
- 테스트를 실행하는 단계를 추가합니다:
- name: Run tests
run: npm test
- 아티팩트 디렉터리 및 파일을 생성하는 빌드 단계를 추가합니다:
- name: Build project
run: |
mkdir dist
echo "Build artifact created at $(date)" > dist/build.txt
- 마지막으로, 아티팩트 업로드 단계를 추가합니다. 이 단계는 다음 작업에서 사용할 수 있도록 빌드 출력을 저장하므로 매우 중요합니다:
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: dist-files
path: dist
이제 완성된 파일은 다음과 같아야 합니다:
name: Job Dependencies
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install dependencies
run: npm install
- name: Run tests
run: npm test
- name: Build project
run: |
mkdir dist
echo "Build artifact created at $(date)" > dist/build.txt
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: dist-files
path: dist
설명
- 단순화를 위해
matrix 전략을 제거했습니다.
Upload build artifact 단계를 유지했습니다. 다음 작업에서 이 파일들이 필요하므로 이 단계는 매우 중요합니다!
변경 사항을 저장하십시오 (Ctrl+S 또는 Cmd+S).