최근 회사에서 배포하는 작업이 많아지다 보니 점점 귀찮아졌다
build 하고 배포하고 하는 과정이 귀찮아서 자동으로 할 수 있는 방법을 찾아보다 GitHub Action에 대해 알게 되었다.
1. GitHub Action이란?
GitHub Actions은 GitHub에서 제공하는 자동화 도구로, 코드의 빌드, 테스트, 배포 등의 작업을 자동화할 수 있도록 도와준다. GitHub 저장소에 특정 이벤트가 발생할 때마다 워크플로우를 실행하여 원하는 작업을 수행할 수 있다.
YAML 파일을 사용해 쉽게 워크플로우를 정의하고 구성할 수 있다.
또한, Linux, macOS, window 등 다양한 운영체제 환경에서도 실행이 가능하다.
2. 사용방법
GitHub Actions는 GitHub에 내장되어 있기 때문에 저장소에 워크플로우를 추가하기만 하면 된다.
아직 자동으로 배포해도 되는지 허락을 못 받아서 우선 자동 빌드까지만 구현했다.
1) workflow 디렉토리 생성
우선 저장소 루트에 .github 폴더를 만들어주고, 그 안에 workflows 디렉터리를 만들어 준다.
위 사진에서는 blog 가 저장소 루트이기 때문에 이 안에 ' .github/workflows' 폴더를 만들었다.
2) 워크플로우 파일 생성
해당 디렉터리 안에서 원하는 이름의 YAML 파일을 만들어준다.
메모장을 켜서 워크플로우를 저장하고, 다른 이름으로 저장할 때 확장자를 .yml로 해주면 된다.
name: Build
on:
push:
branches:
- main # 또는 사용하는 기본 브랜치
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout 코드
uses: actions/checkout@v2
- name: 의존성 설치
run: npm install # 또는 yarn 등 사용하는 패키지 매니저에 맞게 변경
- name: 빌드
run: npm run build # 또
그 후 워크플로우를 작성해준다.
name은 github 저장소의 action 탭에 표시되는 워크플로우의 이름이다.
해당 필드를 생략하면 워크플로우 파일 이름이 나타나게 된다.
on은 이벤트를 정의할 때 사용한다.
여기서 정의한 이벤트가 실행될 때마다 워크플로우가 실행된다.
jobs는 워크플로우에서 실행할 모든 작업을 작성하는 부분이다.
이 외에 자세한 설명은 GitHub 문서에서 확인할 수 있다.
위 워크플로우는 push 했을 때, 자동으로 build 되는 명령어이다.
3) 테스트 및 확인
자동화 워크플로우가 제대로 실행됐는지 확인하고 싶다면 GitHub > Actions를 들어가 보면 된다.
build 시간이 얼마나 걸렸는지, 제대로 되었는지 확인할 수 있다.
좀 더 자세히 들어가 보면, 어디서 에러가 발생했는지도 확인할 수 있다.
생각보다 자동화하는 작업이 쉬워서 놀랐다.
이를 활용하면 자동 배포, 테스트 자동화 등 다양한 작업을 할 수 있을 것 같다.
조만간 자동으로 배포되는 것도 적용할 예정이다!
그다음엔 테스트 자동화도 적용해 봐야지
'Etc' 카테고리의 다른 글
윈도우 & 리눅스 HTTPS 인증서 발급 방법 (Let's Encrypt) (1) | 2024.08.22 |
---|---|
[회고록] 농림축산식품부 공공데이터 활용 창업경진대회 후기 (0) | 2024.07.24 |
[Git] 삭제된 브랜치 복구하기 (0) | 2024.04.19 |
윈도우, 리눅스에서 서버 재부팅시 프로그램 자동실행 설정하기 (feat. next.js) (0) | 2024.04.04 |
[독후감] 작은 것에서부터 시작하는 인생의 성공 레시피, <원씽> 리뷰 (1) | 2023.04.12 |