💡 개요
난 매번 배포할 때 마다 Jenkins을 사용했다.
그런데 OKKY에서 GitHub Action과 Jenkins에 대해 비교하는 글을 보고 이번 기회에 GitHub Action에 대해 정리해보기로 했다.
🛠️ GitHub Action
GitHub Action은 말 그대로 GitHub에서 지원하는 자동배포 기술이다.
위 이미지는 GitHub 공식 문서에서 가져온 GitHub Actions workflow 이미지인데, 용어가 좀 어색하니까 쉽게 정리해 보자.
- Event
- “언제 실행할까?”를 정하는 트리거
- GitHub Actions가 시작되는 조건을 의미한다. (특정 브랜치에 push or pull request)
- Runner
- 워크플로를 실제로 실행하는 컴퓨터(서버)
- GitHub에서 제공하는 기본 서버도 있고, **직접 만든 서버(가상 머신, 컨테이너 등)**도 설정할 수 있다.
- Job
- 실행할 작업 단위
- 서로 병렬로 실행 가능하며, 각 job은 별개의 환경에서 동작한다.
- 예: 테스트, 빌드, 배포를 각각 분리된 Job으로 구성
- Step
- Job 안에서 실행되는 한 줄 한 줄의 작업
- 보통 Shell 명령어 실행이 포함된다.
🤔 GitHub Action이 적합한 상황?
개인적으로 GitHub Actions는 개인 프로젝트나 소규모 팀 프로젝트에 적합하다고 생각한다.
그 이유는 Jenkins처럼 모든 과정을 직접 스크립트로 구성하지 않아도 되고, GitHub 저장소와 자연스럽게 연동되기 때문에 간편하게 CI/CD 파이프라인을 구성할 수 있기 때문이다.
반면에 Jenkins는 처음부터 끝까지 사용자가 스크립트를 작성하고 환경을 구성해야 하기 때문에 복잡한 워크플로우나 다양한 시스템을 연동해야 하는 기업 환경에 더 적합하다.
그리고 일부 기업에서는 GitHub 대신 GitLab을 사용하기 때문에, GitHub Actions는 사용하지 않는 경우도 많다.
→ 대신 GitLab CI/CD라는 기술이 존재한다!!
👨🏻💻 참고
젠킨스, 깃허브액션중 뭐가 좋을까요? | OKKY Q&A
젠킨스, 깃허브액션중 뭐가 좋을까요? | OKKY Q&A
배포할게 많아져서젠킨스나, 깃허브 액션중 공부하면서 도입해보려는데요대략적인 둘의 특징은 알고 있습니다젠킨스로 하면 배우고 적용하는데 시간이 오래걸릴것 같고깃어브 액션은 다른깃
okky.kr
https://docs.github.com/ko/actions/get-started/understanding-github-actions
Understanding GitHub Actions - GitHub Docs
GitHub Actions는 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 CI/CD(연속 통합 및 지속적인 업데이트) 플랫폼입니다. You can create workflows that build and test every pull request to your repository, or deploy m
docs.github.com
'개발 일기' 카테고리의 다른 글
[개발 일기] 2025.07.01 - boolean 타입을 리턴할 때 is 조심! (Feat: @Getter) (1) | 2025.07.01 |
---|---|
[개발 일기] 2025.06.30 - 딥링크는 전역 위치에서 사용하세요 (1) | 2025.06.30 |
[개발 일기] 2025.06.28 - 조금 이따가 해드릴께요~ (1) | 2025.06.28 |
[개발 일기] 2025.06.27 - Stateful과 Stateless의 차이 (0) | 2025.06.27 |
[개발 일기] 2025.06.26 - AOT (0) | 2025.06.26 |