개발하는 삶

CI/CD, Jenkins 본문

IT개념

CI/CD, Jenkins

삶_ 2023. 5. 23. 08:21

CI/CD

  • 지속적인 통합/지속적인 배포
  • CI
    • 여러 개발자들이 개별적으로 작업한 코드 변경 사항들을 주기적으로 통합하는 프로세스
    • 빌드, 테스트, 그리고 소스 코드의 통합(머지)을 포함하는 단계
  • CD
    • 소프트웨어 변경 사항을 자동으로 테스트, 빌드, 배포하는 프로세스
    • 해석 분류
      • Continuous Deployment (지속적인 배포)
        • 변경 사항이 통합되고 테스트를 통과한 후 실시간 자동 배포
      • Continuous Delivery (지속적인 전달)
        • 변경 사항이 통합되고 테스트를 통과한 후에도 배포를 수동으로 결정
        • 배포 시점을 선택하고 안정성과 품질에 대한 최종 확인을 수행한 후에 변경 사항을 배포

 

 

메모용

Jenkins

  • 자동화
    • 테스트 해줌
    • github action 과 비슷
      • 깃허브 사이트 안에서 push 기록 등 확인이 가능해서 편함
    • push 하고 테스트(CI)를 함 → 문제가 없음(도커 빌드 문제가 없는지, API나 프론트 잘 동작 되는지 테스트가 다 됨) → 배포(CD) 해줌
  • 젠킨스 서버에 git (push, pull) 일때만 넘어감
  • 깃 클론 → 깃 푸시
  • 젠킨스 서버 안에서 동작하는 것
    • API, GUNICORN
    • docker build front 80:80
      • 프론트가 만들어짐
    • docker build api 80:80
      • api가 만들어짐

 

Swagger

  • 프론트와 연결 전 백엔드 쪽 기능 테스트가 가능
  • 프론트와 소통할 때 문서 정리할 때 좋음
    • swagger로 특정 메서드를 왜 썼는지 설명해주기
    • 특정 파라미터 값을 이걸 통해 쓰면 된다

 

postman

  • crud 테스트 할때 사용하면 좋음
  • ⇒ 실제로 기능이 잘 되서 데이터가 잘 만들어졌는지 확인
  • 시각적으로 보기 좋아 파악이 쉬워짐

'IT개념' 카테고리의 다른 글

빅데이터, 블록체인 등 용어  (0) 2022.12.17