내 잡다한 노트
Jenkins New item 페이지 본문
처음에 jenkins를 설치하고 password를 입력하고 플러그인을 생성한 뒤에 볼 수 있는 페이지이다.
각각에 대해 알아보고자 글을 작성하게 됐다.
1. Freestyle Project
- 설명: 가장 기본적인 Jenkins 작업 유형으로, 단순한 CI/CD 프로세스에 사용됩니다.
- SCM(소스 코드 관리)에서 소스 코드를 가져옴.
- 빌드 단계를 직렬로 실행.
- 빌드 후 단계(예: 아티팩트 저장, 이메일 알림 전송 등)를 추가 가능.
- 특징:
- 간단한 빌드/배포 파이프라인 구현.
- 플러그인을 통해 추가 기능 확장 가능.
- 적합한 경우:
- 간단한 CI/CD 작업(예: 코드 빌드, 스크립트 실행).
- 파이프라인 구성 없이 빠르게 작업 설정이 필요한 경우.
2. Pipeline
- 설명: Jenkins의 강력한 작업 유형으로, 스크립트 기반 파이프라인을 작성하여 복잡한 CI/CD 프로세스를 구현할 수 있음.
- Groovy 스크립트를 사용하여 Declarative Pipeline 또는 Scripted Pipeline을 정의.
- 멀티 에이전트에서 작업을 병렬 처리하거나 복잡한 워크플로우를 처리 가능.
- 특징:
- 유연성과 확장성이 뛰어남.
- Git 등과 통합하여 파이프라인 코드를 버전 관리 가능.
- 적합한 경우:
- 멀티스테이지 빌드/배포 파이프라인.
- 복잡한 워크플로우가 필요한 프로젝트.
3. Multi-configuration Project
- 설명: 다양한 환경에서 테스트, 플랫폼별 빌드, 또는 여러 매개변수를 사용한 빌드 작업을 처리할 수 있는 유형.
- 각 설정에 대해 별도의 빌드가 실행됨.
- "매트릭스 프로젝트"라고도 불리며, 여러 설정을 조합해 작업을 실행.
- 특징:
- 매개변수화된 빌드 실행 가능.
- 빌드 환경(예: 운영 체제, JDK 버전 등)을 다양하게 조합해 테스트 가능.
- 적합한 경우:
- 플랫폼/환경별 호환성 테스트.
- 다양한 설정에서 동일한 빌드를 반복 실행.
4. Folder
- 설명: 작업을 폴더 형태로 정리하여 관리할 수 있도록 하는 컨테이너.
- 폴더는 별도의 네임스페이스로 동작하므로, 동일한 이름의 작업을 다른 폴더에 생성 가능.
- 특징:
- 대규모 Jenkins 인스턴스에서 작업 그룹화.
- 접근 제어를 폴더 단위로 설정 가능.
- 적합한 경우:
- 프로젝트별 또는 팀별로 작업을 분리해 관리.
- 대규모 프로젝트에서 구조화된 작업 관리가 필요한 경우.
5. Multibranch Pipeline
- 설명: Git, GitHub, GitLab 등의 SCM 리포지토리에서 각 브랜치에 대해 별도의 파이프라인 작업을 자동 생성.
- 브랜치, 태그, PR(Pull Request) 등 SCM 이벤트에 따라 작업을 실행.
- 특징:
- 멀티브랜치 리포지토리를 효율적으로 관리.
- 각 브랜치별로 독립적인 파이프라인 설정.
- 적합한 경우:
- 브랜치별로 빌드/테스트 파이프라인이 필요한 프로젝트.
- GitHub/GitLab과 통합된 CI/CD.
6. Organization Folder
- 설명: 멀티브랜치 프로젝트를 포함한 여러 서브 폴더를 자동으로 스캔하여 작업을 생성.
- GitHub 조직 또는 GitLab 그룹을 기반으로 자동으로 작업을 생성하고 관리.
- 특징:
- 다수의 리포지토리를 포함한 작업을 자동 관리.
- 조직 레벨에서 파이프라인을 구조화.
- 적합한 경우:
- 조직 전체의 리포지토리를 관리.
- 대규모 코드베이스에서 프로젝트별 CI/CD 파이프라인 구성.
요약
작업 유형설명 및 사용 사례
Freestyle Project | 간단한 CI/CD 작업을 위한 기본 유형. |
Pipeline | 복잡하고 유연한 파이프라인 작업을 스크립트로 구현. |
Multi-configuration | 다양한 환경/설정에서 작업 실행을 위한 매트릭스 작업. |
Folder | 작업을 폴더 형태로 정리하고 관리. |
Multibranch Pipeline | SCM 브랜치별로 독립적인 파이프라인 자동 생성 및 관리. |
Organization Folder | 조직 전체 리포지토리 기반으로 CI/CD 작업 생성 및 관리. |
'DevOps > Jenkins' 카테고리의 다른 글
Jenkins의 Scripted Pipeline에선 Groovy만 되는건가요? (0) | 2024.11.27 |
---|---|
Jenkinsfile 이란? (0) | 2024.11.27 |
Jenkins agent (0) | 2024.11.24 |
Groovy 란? (0) | 2024.11.24 |
Jenkins 에이전트 (0) | 2024.11.21 |