이번에 그동안 해보지 못했던 깃허브 액션에 대해 세팅할 기회가 있었다. pnpm 을 사용하기 때문에 깃헙 docs 에서도 자세히 가이드를 주지 않아 세팅하기 어려웠던 것 같다. 캐싱 쪽에서 문제가 생긴 건지 처음 올린 코드에서는 빌드 오류가 떴고, 에러를 좀 더 확인해보니 ~.. (이부분 더 쓰기 )
GitHub Actions란?
GitHub Actions는 GitHub 리포지토리에서 CI/CD(Continuous Integration/Continuous Deployment) 워크플로우를 자동화하는 도구이다. 이를 통해 코드 빌드, 테스트, 배포 등의 작업을 자동으로 실행할 수 있다.
GitHub Actions의 주요 개념
1. 워크플로우(Workflow):
• 작업의 전체 흐름을 정의하는 파일.
• .github/workflows 디렉토리에 YAML 파일로 저장된다.
2. 이벤트(Event):
• 워크플로우가 실행되는 트리거(조건).
• 예: push, pull_request, schedule (크론 작업), workflow_dispatch (수동 실행).
3. 잡(Job):
• 워크플로우의 각 독립적인 작업 단위.
• 여러 잡을 병렬 또는 순차적으로 실행할 수 있습니다.
4. 스텝(Step):
• 잡 내에서 실행되는 개별 명령어 또는 액션.
• 명령어 실행(run) 또는 GitHub에서 제공하는 액션(uses)을 사용.
5. 러너(Runner):
• 워크플로우가 실행되는 환경.
• GitHub 호스팅 러너(ubuntu-latest, windows-latest, 등) 또는 셀프 호스팅 러너를 사용할 수 있다.
Github Action 세팅 방법
1. Actions 에 들어간다.
깃허브 액션 세팅을 위해서는 해당 화면에서 Actions 를 누른다.
2. 내가 행하고자 하는 액션을 선택한다.
우리는 Node.js 환경이기 때문에 node.js 를 눌러준다.
3. 행할 Jobs 를 수정한다.
다음과 같이 초기 코드가 뜨는데,
우리는 pnpm 을 쓸 것이기 때문에 좀 더 손을 봐줘야 했다.
근데 ,,
name: Node.js CI
on:
push:
branches: [ "develop" ]
pull_request:
branches: [ "develop" ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x, 20.x, 22.x]
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Install pnpm
run: npm install -g pnpm
- name: Install dependencies
run: pnpm install
- name: Build project
run: pnpm build --if-present
- name: Run tests
run: pnpm test
다음과 같이 작성하니까, 빌드 에러가 떴다.
그래서 Pnpm 에 대한 정보가 공식문서에 있는지 확인해봤더니, pnpm은 github docs에도 인증되지 않은 비공식 작업 코드를 제공한다.
'Github' 카테고리의 다른 글
티스토리 글 작성과 Commit 연동하기 (GithubAction) (0) | 2025.02.10 |
---|---|
[Github] Github 이슈, PR 템플릿 만들기 (0) | 2025.01.07 |