CI 시각화¶
Guance CI 시각화 기능은 GitLab, Jenkins 등 도구의 CI 실행 데이터를 연동 및 수집하여 전용 모니터링 뷰를 제공합니다. 주요 용도는 다음과 같습니다. 개발자가 코드를 푸시한 후 CI 파이프라인(예: 빌드, 테스트)이 실패하면 이 기능에서 모든 CI 파이프라인(Pipeline)과 작업(Job)의 성공률, 실패 단계 및 원인을 직접 확인할 수 있어 문제를 신속하게 파악하고 코드 통합 및 배포 과정에 직접적인 문제 해결 지원을 제공합니다.
개념¶
| 용어 | 설명 |
|---|---|
| CI/CD | 지속적 통합(CI), 지속적 전달(Continuous Delivery) 및 지속적 배포(Continuous Deployment)의 약자로, 개발 단계에서 자동화된 프로세스를 통해 애플리케이션을 자주 전달하는 개발 방법론이며, 주로 새 코드 통합 시 발생하는 문제를 해결합니다. |
| 지속적 통합 | 개발자가 코드를 자주 메인 브랜치에 통합할 수 있게 하는 개발 방식으로, 매 통합마다 자동화된 빌드와 테스트를 통해 코드를 검증합니다. 통합 오류를 조기에 발견하고 팀 협업 효율을 높이는 것이 목적입니다. |
| 지속적 전달 | 지속적 통합을 기반으로, 코드 베이스가 항상 프로덕션 환경에 배포할 수 있는 상태를 유지하도록 합니다. 소프트웨어 출시 과정을 더욱 안정적이고 빠르며 반복 가능하게 만듭니다. |
| 지속적 배포 | 지속적 전달의 한 단계 더 나아가, 자동화된 프로세스를 통해 검증된 코드를 프로덕션 환경에 자동으로 배포하여 개발부터 출시까지 완전한 자동화를 실현합니다. |
| Pipeline | CI/CD 프로세스를 구현하는 자동화된 파이프라인으로, 코드 통합, 테스트, 배포까지의 전체 워크플로를 정의하며 애플리케이션의 전체 수명 주기에 걸쳐 있습니다. |
| Job | Pipeline을 구성하는 개별 실행 단위 또는 작업으로, 일반적으로 특정 자동화 단계(예: 빌드, 테스트, 배포)를 의미합니다. |
| GitLab | Ruby on Rails 기반으로 개발되었으며 Git을 사용한 코드 버전 관리를 제공하는 오픈소스 웹 플랫폼입니다. 프로젝트 관리, 코드 저장소, CI/CD 등 완전한 DevOps 기능을 제공합니다. |
| Jenkins | Java 기반의 오픈소스 자동화 서버로, 주로 지속적 통합과 지속적 전달을 구현하는 데 사용됩니다. 플러그인 확장을 통해 소프트웨어를 빌드, 테스트, 배포할 수 있습니다. |
시작하기¶
- CI 프로세스 시각화: Pipeline 및 Job을 통해 모든 CI 프로세스를 시각적으로 확인합니다.
- CI 결과 통계 분석: Pipeline 및 Job을 통해 모든 CI의 성공률, 실패율 등을 통계합니다.