Jenkins로 배우는 CI/CD 파이프라인 구축
1. Install and Run Jenkins With Docker Compose
2. Jenkins Pipeline 개념 및 예제
3. Github WebHooks 연동하여 Jenkins 빌드 자동화
4. Jenkins Multibranch Pipeline: 효과적인 브랜치 관리와 CI/CD 구축
Jenkins Pipeline 개념
젠킨스 파이프라인은 연속적인 작업들을 묶어서 관리할 수 있게 만드는 젠킨스 플러그인입니다.
파이프라인을 작성하는 데에는 두 가지 문법이 존재합니다.
Declarative
pipeline {
agent any
stages {
stage('Build') {
steps {
//
}
}
stage('Test') {
steps {
//
}
}
stage('Deploy') {
steps {
//
}
}
}
}
Scripted
node {
stage('Build') {
//
}
stage('Test') {
//
}
stage('Deploy') {
//
}
}
사전 요구 사항
해당 예제를 수행하려면 아래와 같은 요구사항이 필요합니다.
1. Jenkins 2.x or later
2. Pipeline plugin
- Jenkins관리 > Plugin Manager 페이지에서 왼쪽에 위치한 Installed plugins에서 설치여부를 확인할 수 있습니다.
Jenkins Pipeline 예제
Jenkins Pipeline은 아래 방법 중 하나로 작성할 수 있습니다.
- Blue Ocean: Blue Ocean UI를 통해서 파이프라인 Jenkinsfile를 작성할 수 있습니다.
- Classic UI: 클래식 UI를 통해 젠킨스에서 직접 파이프라인을 입력 가능합니다.
- SCM: 프로젝트의 source control repository에 Jenkinsfile를 만들어 파이프라인 구성 가능합니다.
해당 예제에서는 classic UI 를 이용해서 Declarative pipeline 를 사용하는 방법을 안내해 드리겠습니다.
1. 왼쪽 탭에 위치한 새로운 Item 버튼을 클릭합니다.
2. Enter an item name 에 파이프라인 프로젝트 이름을 입력하고 Pipeline 를 선택하고 그다음 OK 버튼을 클릭합니다.
3. 페이지 상단 왼쪽에 위치한 Pipeline 탭을 클릭합니다.
4. Definition 필드가 Pipeline script옵션으로 선택되어 있는지 확인합니다.
5. 아래 Pipeline code 를 Script 텍스트 영역에 입력하고 저장 버튼을 클릭합니다.
pipeline {
agent any
stages {
stage('build') {
steps {
echo 'building the application...'
}
}
stage('test') {
steps {
echo 'testing the application...'
}
}
stage('deploy') {
steps {
echo 'deploying the application...'
}
}
}
}
6. 저장 버튼을 클릭하면 파이프라인 프로젝트 페이지가 열린다. 해당 페이지에서 왼쪽에 위치한 지금 빌드 버튼을 클릭해서 파이프라인을 실행해보면 됩니다.
7. 왼쪽 아래에 위치한 Build History 에서 #1 를 클릭해서 실행한 파이프라인에 대한 자세한 정보를 확인합니다.
8. 왼쪽 탭에 위치한 Console Output 을 클릭해서 실행한 파이프라인의 전체 출력을 확인할 수 있습니다.