본문 바로가기
카테고리 없음

CI/CD에 대하여

by 백엔드 개발자 2024. 10. 26.

 

정의


  • 어플리케이션 개발부터 배포까지 모든 단계를 자동화를 통해 효율적이고 빠르게 사용자에게 배포할 수 있는 것.
    1. CI
      • 지속적인 통합.(빌드와 테스트의 자동화)
      • 코드의 변경이 주기적으로 빌드 및 테스트되면서 merge되는 것.
        1. 코드 변경사항 주기적으로 빈번하게 merge : 2명이상 개발자가 협업하면서 개발시, 오랜기간 개발하다가 한번에 merge하면 충돌되는 코드가 많아짐. 그래서 가능한 작은 단위로 빈번히 개발하고 통합하는 방법
          1. 개발자가 github에 통합
          2. 빌드 테스트 진행
          3. 버그 발생시 다음날 해결
        2. 통합단계 자동화 : build하고 test하는 과정을 프로그램이 자동으로 해주는 방식.
          1. 작업내용 github에 통합
          2. 빌드 테스트는 시스템이 자동진행. 버그생기면 해결
      • 장점
        • 코드 검증시간 감소
        • 개발편의성 증대
        • 테스트코드 통과한 코드만 올라갈 수 있어서 코드퀄리티 유지에 도움이 된다.
    2. CD
      1. 지속적인 제공과 지속적인 배포.
        1. 지속적인 제공
          1. CI에서 build및 Test된 이후 검증. 그후 배포를 수동적으로 진행하는 것.
        2.  지속적인 배포
          1. 배포할 준비가 되자마자 자동화를 통해 배포를 진행하는것
      2. 장점
        1. 배포보다 개발에 더 신경쓸 수 있음.
        2. 원클릭으로 빌드,테스트, 배포 자동화 가능.

 

 

 

 

 

 

 

출처 

 

CI/CD란 무엇일까?

오늘은 CI/CD에 대해서 작성해보겠습니다. 앞으로는 글을 작성하는데 편한 글씨체로 작성할 생각입니다 :) CI/CD란? CI/CD는 개발자라면 한 번쯤은 다들 들어봤을 만한 단어일 것이다. CI/CD는 애플리

jud00.tistory.com