[10분 테코톡] 도비의 CI/CD와 Github Action
도비의 CI/CD와 Github Action
1. CI/CD란?
CI/CD란 Continuous Integration(지속적 통합)과 Continuous Deployment(지속적 배포)의 줄임말로, 소프트웨어 개발 프로세스의 일환으로 코드 변경사항을 더 자주 통합하고 릴리스 과정을 자동화하여 테스트하고 배포하는 방법론이다.
2. Github Action이란?
Github Action은 Github에서 제공하는 CI/CD 서비스로, 레포지토리 내에서 Workflow를 설정하여 특정 이벤트(코드 푸시, 이슈 생성 등)가 발생하면 자동으로 작업을 실행할 수 있게 해준다.
3. Github Action의 장점
- Github과 연동하여 사용하기 쉽다.
- 다양한 환경과 언어를 지원한다.
- 무료로 제공되는 크레딧을 활용하여 안정적으로 운영할 수 있다.
4. Github Action을 통한 CI/CD 구축
- 레포지토리 내
.github/workflows
디렉토리에 작업을 정의한 yml 파일을 생성한다. - 레포지토리 설정에서 Secrets에 보안 정보를 저장한다.
- 정의한 Workflow가 이벤트에 따라 자동으로 실행된다.
5. 예시: Node.js 프로젝트에 Github Action 적용하기
- Node.js 프로젝트 루트 디렉토리에
.github/workflows
디렉토리 생성 node.js.yml
과 같은 이름의 yml 파일을 생성하여 Workflow 작성- 필요한 Job과 Step을 정의하고, 필요한 테스트 및 배포 절차를 작성
CI/CD를 위한 Github Action을 통해 코드 변경사항을 고객에게 안정적으로 배포할 수 있으며, 개발자들은 더 안정적으로 협업하고 릴리스를 관리할 수 있는 환경을 제공한다.