Post

[DevOps] CI/CD 파이프라인 구축

[DevOps] CI/CD 파이프라인 구축

CI/CD 파이프라인

  • CI/CD 파이프라인은 고객에게 새 버전의 소프트웨어를 제공하기 위해 수행해야 하는 단계
  • 빌드-테스트-릴리즈-배포 등으로 이루어진 단계.
  • DevOps 또는 SRE 방식으로 더 효과적이게 소프트웨어를 제공하는 데에 초점을 맞춘 방법

CI/CD 파이프라인의 요소

CI/CD 파이프라인의 단계는 각기 다른 테스크 하위 집합으로 이루어져 있는데, 이를 파이프라인 단계라고 부른다. 일반적으로 파이프라인 단계는 다음과 같다.

  • 빌드(Build) - 애플리케이션을 컴파일하는 단계
  • 테스트(Test) - 코드를 테스트하는 단계. 이 단계를 자동화하여 시간과 수고를 줄임
  • 릴리즈(Release) - 애플리케이션을 리포지토리에 제공하는 단계. 깃과 같은 리포지토리에 릴리즈함
  • 배포(Deploy) - 코드를 프로덕션에 배포하는 단계
  • 검증 및 컴플라이언스(Validation & compliance ) - 빌드 검증 단계는 해당 조직의 필요에 따라 결정된다.

GIthub Actions 파이프라인

  • 복잡한 과정없이 바로 깃허브에서 사용할 수 있다.
  • 빌드 과정을 눈으로 확인하기 쉬움
  • 깃허브의 모든 이벤트에 대한 작업을 제공하고 다양한 언어와 프레임워크를 지원함
  • 젠킨스보다 빠름
  • public은 무료, private저장소는 매월 3000분 무료
  • 문서가 비교적 부족함
  • UI에서 개별 워크플로우 실행을 삭제할 수 없음
  • 워크플로우에서 단일 작업만 다시 실행할 수 없다.

Jenkins 파이프라인

  • 무료
  • 다양한 플러그인,IDE 지원
  • 비교적 많은 사용자와 많은 문서 존재
  • 규모가 작은 프로젝트의 경우 설정하는데 리소스 낭비가 발생할 수 있음
  • 지라와 연동이 불편하거나 완벽하지 않을 수 있음.
This post is licensed under CC BY 4.0 by the author.