[개발일기] CI/CD 환경 이해하기

Keunyeong Lee·2021년 11월 25일
0

[개발일기]

목록 보기
3/14
post-thumbnail

CI/CD란?

어플리케이션 개발 단계부터 배포 때까지 이 모든 단계들을 자동화를 통해서 조금 더 효율적이고 빠르게 사용자에게 빈번히 배포할 수 있도록 만드는 것을 말한다.

Continuous Intergration ( 지속적인 통합 )

Continuous Delivery ( 지속적인 제공 )

Continuous Deployment ( 지속적인 배포 )

Continuous Intergration

주요 버그 수정이나 새로 만드는 기능들이 main repository에 주기적으로 빌드되고 테스트가 되어서 merge 되는 것을 말한다.

1. 개발자들은 코드 변경상항을 주기적으로 빈번하게 머지해야 한다.

- 작은 단위로 나누어서 main repository에 병합하거나 배포할 방법을 고민해야한다.

2. 통합을 위한 단계(빌드, 테스트, 머지)의 자동화

머지 하면 수정사항이 자동으로 빌드 되고 버그가 있는지 테스트까지 자동으로 되어야한다.

변경사항 확인 후 repository에 merge ->

자동으로 CI Script 를 통해 CI Server에서 build 하고 test 한다.

Continuous Delivery

1. Prepare Release & Deploy Release

준비된 Release를 검증하여 Release를 배포하는 단계를 자동화 하는 것!

정리

CI/CD 파이프라인 (자동화)

CODE => BUILD => TEST => RELEASE => DEPLOY

CI/CD TOOL

Jenkins - Buildkite

GitHub Actions

GitLab CI/CD

Bitbucket Pipelines

circleci




#Ref)

드림코딩by엘리

profile
🏃🏽 동적인 개발자

0개의 댓글