CI/CD
CI (Continuous Integration)
코드 변경사항을 주기적으로 번번하게 merge -> 다른 코드 integration 어려움 -> segments 별로 나눠서 개발 + 통합 중요함
주기적으로 merge 된 코드들이, build 가 제대로 잘 됏는지, 그리고 기존 시스템에 잘 adapted 되어있는지 check이 되어야함
개발자들, 하루에 몇번씩 코드리뷰 해서 merge를 함, merged 가 되면, 자동으로 CI script를 통해 추가된 코드와 함께 build화 되고, unitest/integration test script 통해서 됨 -> green 되면, 나중에 배포할때 반영가능
Build가 실패하거나 Test 실패하면, Red sign 나옴 -> 개발자에게 자동으로 알려주게됨
버그수정용이
문제점을 빠르게 발견
코드의 변경사항이 작음
코드의 퀄리티 향상
모든 개발자들이 자신이 작성한 코드내에서는 항상 Unitest를 해야한다는 점이기 때문
CD (Continuous Delivery{Deployment}) 지속적 제공/배포
어떻게 하면 자동화해서 이 배포+제공을 할수있는지..?
CI == Build,Test 에서
release할 준비과정 거치고, 개발자가 검증팀이 검증을 거치고
수동적으로 배포하는걸 Continuous Delivery
자동으로 배포하는걸 Continuous Deployment
대부분의 회사에서 CI/CD를 거쳐서 배포하기 때문
CODE -> BUILD
'Infra As Code > Jenkins' 카테고리의 다른 글
젠킨스 컨셉 이해 (0) | 2022.09.07 |
---|