▶️ CI/CD가 무엇인가?
📌CI : 지속적 통합(Continuous Integration)
-> 지속적인 통합이란 새로운 코드 변경사항이 정기적으로 빌드 및 테스트되어 공유 리파지토리에 통합하는 것을 의미한다.
-> 버그를 신속하게 찾아서 해결, 소프트웨어의 품질 개선, 릴리즈 시간 단축에 목표를 둔다.
📌CD : 지속적 제공/배포(Continuous Delivery/Deployment)
-> 지속적인 제공 : 공유 리파지토리로 자동으로 릴리즈하는것.
-> 지속적인 배포 : 고객 프로덕션환경까지 자동으로 배포하는것.
소프트웨어가 언제든지 신뢰가능한 수준의 버전을 유지할 수 있도록 하는것이 CD이다.
한마디로, 개발 사이클을 간소화하고 가속화하기위한 작업이다.
바로 이것을 CI/CD 파이프라인이라 부른다.
그렇다면 CI/CD를 왜 적용하는걸까?
일반적으로 CI/CD 자동화를 적용하면 버그 및 코드 오류를 예방하는 동시에 지속적인 소프트웨어 개발 및 업데이트 주기를 유지하기 위해 쓰인다. 또, CI/CD의 기능을 활용하면 복잡성을 줄이고 효율성을 높이며 워크플로우를 간소화할 수 있게 된다!
애플리케이션을 개발할때 각각의 개발자들이 각기 다른 기능을 작업하고, 특정 날에 머지(merge)할때 반복적인 작업에 불필요한 시간을 소모하게 된다. 하나의 애플리케이션 개발에서 다른 개발자들이 동시에 적용하는 변경사항과 충돌할 가능성이 있다. 이 문제를 CI로 해결할 수 있게 된다.
CI/CD 자동화 툴에는 여러가지가 있지만, github actions을 사용하여 토이프로젝트 모운완의 CI/CD 파이프라인을 구축해보기로 했다.
'개인프로젝트' 카테고리의 다른 글
Gitghub Actions로 CI/CD 파이프라인 구축하기 大 삽질일기 - 2 (0) | 2024.04.01 |
---|---|
Gitghub Actions로 CI/CD 파이프라인 구축하기 大 삽질일기 - 1 (0) | 2024.03.30 |
11 (0) | 2024.03.27 |
DFA (0) | 2024.03.26 |
4_1. 프로젝트 개발 프로세스 정립하기 - github flow 적용 (0) | 2024.03.23 |