Skip to content

CI/CD (GitHub Actions)

CI/CD란 코드를 작성하는 순간부터 서비스에 배포되기까지의 연결된 과정을 말해요. 조금 더 자세한 의미는 아래와 같아요.

  • CI(Continuous Integration): 개발자가 작성한 코드를 main 브랜치에 문제 없이 합치도록 돕는 과정을 말해요. Linting이나 formatting, 또는 다양한 testing 등이 해당돼요.
  • CD(Continuous Delivery): main 브랜치의 코드를 실제 서비스에 배포하는 과정을 말해요.

조금 더 자세한 설명을 원한다면, 이 YouTube 영상을 확인해보세요!

Pipeline 구성

코드당의 CI/CD pipeline은 GitHub Actions를 사용해요. 아래 그림처럼 CI, CD(Staging, Production)로 크게 세 개로 이루어져있어요.

  • CI: Pull Request를 생성하거나 main branch에 push했을 때 실행돼요. Linting, formatting, testing 등 여러 과정을 통해 코드가 main branch에 합쳐져도 괜찮은지 검사해요.
  • CD (Staging): main branch에 push했을 때 실행돼요. 코드를 스테이징 환경에 배포해요.
  • CD (Production): 직접 클릭해서 동작시켰을 때 실행돼요. 스테이징 환경의 코드를 실제 서비스에 배포해도 괜찮겠다고 판단하면, 이 pipeline을 실행해서 프로덕션 환경에 배포해요.

INFO

스테이징 환경과 프로덕션 환경의 차이가 궁금하다면 'Stage Server' 글을 확인해보세요!

CI

TODO: 설명 추가 예정

CD (Staging)

TODO: 설명 추가 예정

CD (Production)

TODO: 설명 추가 예정

More pipelines

TODO: 설명 추가 예정