Jenkins 파이프라인 튜토리얼: 생성 방법 Jenkins파일(예시)

⚡ 스마트 요약

Jenkins 파이프라인은 빌드, 테스트 및 배포 작업을 코드로 실행되는 하나의 순서화된 시퀀스로 연결합니다. Jenkins프로젝트 옆에 커밋된 파일은 해당 시퀀스를 검토 가능하고 버전이 지정된 전달 정의로 변환합니다.

  • 🔘 관로: 각 작업이 이전 작업에 의존하는, 서로 연관된 일련의 사건들.
  • ☑️ Jenkins파일 : 파이프라인의 모든 단계를 담고 있는 도메인별 언어로 작성된 텍스트 파일입니다.
  • ✅ 두 가지 구문: 선언적 방식은 고정된 계층 구조를 제공하는 반면, 스크립트 방식은 구조를 다른 것으로 대체합니다. Groovy 제어 할 수 있습니다.
  • 🧪 네 가지 용어: 파이프라인, 노드, 스테이지 및 스텝은 각각 흐름, 머신, 단계 및 작업을 나타냅니다.
  • 🛠️ 설정 경로: 빌드 파이프라인 플러그인을 설치하고, 파이프라인 뷰를 추가하고, 작업을 연결한 다음 실행하세요.
  • 📌 관행: 재료 관련 작업은 노드 블록에, 설정 외 작업은 스테이지에, 입력값은 타임아웃으로 묶으세요.

Jenkins 파이프라인은 코드로 정의됩니다. Jenkins입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에

Jenkins 관로?

Jenkins Pipeline은 통합 및 구현을 지원하는 플러그인들의 조합입니다. 지속적 전달 파이프라인이는 파이프라인 DSL을 통해 간단하고 복잡한 배포 파이프라인을 코드로 생성할 수 있는 확장 가능한 자동화 서버입니다. 파이프라인은 순차적으로 연결된 이벤트 그룹입니다.

지속적 전달 파이프라인이란 무엇입니까? 어떻게 작동하나요?

안에 Jenkins 파이프라인에서 모든 작업이나 이벤트는 아래 다이어그램에서 보여주는 것처럼 하나 이상의 이벤트에 대한 종속성을 가지고 있습니다.

지속적 배포 파이프라인은 빌드, 배포, 테스트 및 릴리스 단계를 거칩니다. Jenkins
작업 Jenkins 지속적 배포 파이프라인

위 그림은 지속적 배포 파이프라인을 나타냅니다. Jenkins빌드, 배포, 테스트, 릴리스라는 상태들로 구성되어 있으며, 각 상태에는 순차적으로 실행되는 고유한 이벤트들이 있습니다.

지속적 배포 파이프라인은 버전 관리 시스템에서 릴리스까지 소프트웨어를 일련의 반복 가능한 빌드 과정을 통해 자동으로 전달하는 프로세스를 구현합니다. 테스트 및 배포 단계.

무엇이 Jenkins파일?

Jenkins 파이프라인은 텍스트 파일에 정의할 수 있습니다. Jenkins이 파일은 파이프라인을 도메인 특화 언어(DSL)로 코드로 표현하며, 파이프라인 실행에 필요한 모든 단계를 담고 있습니다.

사용의 이점 Jenkins파일 내용은 다음과 같습니다:

  • 한 JenkinsFile은 모든 브랜치에 대한 파이프라인을 생성하고 풀 리퀘스트를 실행할 수 있습니다.
  • 검토하실 수 있습니다. Jenkins 파이프라인의 코드
  • 귀하는 귀하의 Jenkins 관로
  • 이는 파이프라인의 단일 소스이며 여러 사용자가 수정할 수 있습니다.

파이프라인은 다음과 같이 정의할 수 있습니다. Jenkins 웹 UI 또는 Jenkins소스 제어 시스템에 파일이 커밋되었습니다. 최소한의 선언적 파일은 파이프라인 블록, 에이전트, 그리고 각 단계별로 하나의 스테이지를 담는 스테이지 블록으로 구성된 고정된 형태를 가집니다.

pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                echo 'Building'
            }
        }
        stage('Test') {
            steps {
                echo 'Testing'
            }
        }
        stage('Deploy') {
            steps {
                echo 'Deploying'
            }
        }
    }
}

해당 파일을 저장소 루트에 저장하면 파이프라인 버전이 코드와 일치하게 됩니다.

선언적 파이프라인 구문과 스크립트 기반 파이프라인 구문 비교

두 종류의가 있습니다 Jenkins 파이프라인 구문은 정의에 사용됩니다. Jenkins파일.

  1. 선언적
  2. 스크립트

선언적

선언적 파이프라인 구문이 더 쉬운 방법입니다. 미리 정의된 계층 구조를 따르면서도 파이프라인 실행의 모든 ​​측면을 직관적으로 제어할 수 있습니다.

스크립트

스크립트 Jenkins 파이프라인은 다음에서 실행됩니다. Jenkins 경량 실행기를 통해 컨트롤러를 실행하며, 파이프라인을 원자적 명령으로 변환하는 데 매우 적은 리소스를 사용합니다. 두 방식은 작성 방식이 상당히 다르므로 상황에 따라 적절한 방식을 선택해야 합니다. Jenkins파일.

⚠️ 참고 : Jenkins 지금은 다음과 같이 부릅니다. 석사 전에, 제어 장치.

왜 사용 하는가? Jenkins 관로?

Jenkins 열려있다 지속적 통합 서버 자동화하는 소프트웨어 개발 프로세스여러 개를 만들 수 있습니다. 자동화 작업 사용 사례를 기반으로 하나의 파이프라인으로 실행합니다.

사용해야 하는 이유는 다음과 같습니다. Jenkins 관로:

  • 파이프라인은 코드로 구현되어 있으므로 여러 사용자가 프로세스를 편집하고 실행할 수 있습니다.
  • 파이프라인은 안정적입니다. 서버가 예기치 않게 재시작되더라도 파이프라인은 자동으로 재개됩니다.
  • 파이프라인을 일시 중지하고 사용자가 입력을 제공할 때까지 기다릴 수 있습니다.
  • 파이프라인은 대규모 프로젝트를 지원합니다. 여러 작업을 실행하고, 파이프라인을 반복문으로 사용할 수도 있습니다.

Jenkins 관로 Concepts

네 가지 용어가 매번 반복됩니다. Jenkins파일 :

기간 기술설명
관로지속적 배포를 위한 전체 빌드 프로세스를 포괄하는 코드로 작성된 일련의 지침입니다. 파이프라인을 사용하면 애플리케이션을 빌드, 테스트 및 배포할 수 있습니다.
노드기계는 Jenkins 실행을 노드라고 합니다. 노드 블록은 주로 스크립트 파이프라인 구문에서 사용됩니다.
단계스테이지 블록은 일련의 단계로 구성됩니다. 빌드, 테스트 및 배포 프로세스는 각각 하나의 스테이지에서 통합되며, 파이프라인 보기에서도 이러한 스테이지의 구성이 시각화됩니다.
단계정의된 시간에 특정 프로세스를 실행하는 단일 작업입니다. 파이프라인은 일련의 단계입니다.

빌드 파이프라인 플러그인을 설치하세요 Jenkins

빌드 파이프라인 플러그인은 들어오고 나가는 작업에 대한 파이프라인 보기를 생성하고 수동 개입 트리거를 추가합니다.

다음과 같이 설치하십시오.

단계 1) 플러그인 설정은 다음에서 찾을 수 있습니다. 관리 Jenkins 플러그인 관리아래에 나와 있습니다.

⚠️ 버전 참고: current Jenkins 릴리스 라벨 이 화면 관리 Jenkins → 플러그인탭은 여기에 설명된 대로 작동합니다.

플러그인 관리 페이지 Jenkins 빌드 파이프라인 플러그인 설정이 있는 위치

플러그인을 이미 설치한 경우 설치된 탭 아래에 표시됩니다.

설치된 탭 Jenkins 빌드 파이프라인 플러그인을 나열하는 플러그인 관리자

단계 2) 플러그인이 설치되어 있지 않은 경우, '사용 가능' 탭에 표시됩니다.

플러그인이 설치된 경우:

어떻게 작성 방법 Jenkins 관로

일단 당신이 당신의 Jenkins 계기반:

단계 1) 왼쪽의 "+" 버튼을 클릭하세요 Jenkins 파이프라인을 생성하는 대시보드입니다.

플러스 버튼 Jenkins 대시보드는 새 뷰를 추가하는 데 사용됩니다.

단계 2) 새 보기 대화 상자를 작성하세요.

  1. 파이프라인 뷰에 이름을 지정하세요. 우리는 이것을 "Guru이번 데모에서는 "99 파이프라인"을 사용했습니다.
  2. 옵션에서 파이프라인 보기 빌드를 선택하세요
  3. 아래 그림과 같이 확인을 클릭하세요.

파이프라인 뷰 이름을 입력하고 "파이프라인 뷰 빌드"를 선택한 후 새 뷰 대화 상자를 엽니다.

단계 3) 다음 페이지에서는 추가 구성 정보를 입력하라는 메시지가 나타납니다. 기본 설정을 그대로 사용하고, 설정에서 첫 번째 작업을 선택했는지 확인하십시오.

적용을 클릭한 다음 확인을 클릭하세요.

기본 설정과 첫 번째 작업이 선택된 상태로 빌드 파이프라인 보기 구성 페이지를 표시합니다.

그러면 해당 항목의 샘플 파이프라인 보기가 나타납니다.

견본 Jenkins 빌드 파이프라인 뷰가 생성되었습니다. Guru99 파이프라인 품목

파이프라인 빌드 실행

단계 1) 먼저 작업을 연결하세요. 첫 번째 작업을 열고 구성을 클릭하세요.

첫 번째에 링크를 구성하세요 Jenkins 일자리를 연쇄적으로 시작하는 데 사용되는 작업

단계 2) 이제 빌드 트리거에서 '다른 프로젝트가 빌드된 후 빌드' 옵션을 선택하세요.

빌드 트리거 섹션에서 "다른 프로젝트 빌드 후 빌드" 옵션을 선택합니다.

이제 모든 직무를 위한 연결망이 구축되었습니다.

단계 3) 빌드 파이프라인 뷰 플러그인이 설치되어 있지 않다면 설치하십시오.

단계 4) 에 Jenkins 대시보드에서 "+" 버튼을 사용하여 보기를 생성하고, "파이프라인 보기 빌드" 옵션을 선택한 다음 "확인"을 클릭합니다.

빌드 파이프라인 보기 옵션이 선택된 새 보기 대화 상자가 나타납니다.

단계 5) 파이프라인 보기 구성에서 파이프라인 흐름을 찾으십시오.

파이프라인 흐름에서 실행할 초기 작업(1단계와 2단계에서 다른 작업들과 연결된 작업)을 선택합니다.

파이프라인 흐름 설정 Guru99번 프로젝트 1이 첫 번째 과제로 선정되었습니다.

Guru여기서는 프로젝트 1이 초기 작업으로 선택되었으므로 연결된 작업은 하나씩 순차적으로 실행됩니다.

파이프라인이 실행되는 동안 빨간색과 녹색 기호가 상태를 나타냅니다. 빨간색은 실패, 녹색은 성공을 의미합니다.

이 예시에서는 버튼이 초록색이므로 파이프라인이 성공했습니다.

녹색 상태 버튼은 성공을 나타냅니다. Jenkins 파이프라인 실행

달리는 Jenkins 관로

실행하려면 '실행'을 클릭하세요. Jenkins 파이프라인입니다. 대략 이런 모습일 겁니다.

실행 버튼 Jenkins 빌드 파이프라인 보기

위 예시는 간단한 "helloworld.java" 프로그램을 빌드합니다. 실제 프로젝트는 아래의 전체 보기에서 볼 수 있듯이 훨씬 더 복잡한 파이프라인으로 구성됩니다.

진행완료 Jenkins 빌드 파이프라인 보기에서 연결된 모든 작업을 순서대로 보여줍니다.

⚠️ 버전 참고: 빌드 파이프라인 보기 플러그인은 연결된 자유형 작업을 시각화하는 기존 방식이며, 현재는 동일한 흐름을 다음과 같이 정의합니다. Jenkins파일. 파란색 Ocean 더 이상 향상되지 않습니다.

최고의 활용 사례 Jenkins 관로

파이프라인을 유지 관리하기 쉽게 만드는 7가지 습관:

  • 정품을 사용하세요 Jenkins 관로
  • 파이프라인을 코드로 개발
  • 파이프라인의 모든 비설정 작업은 단계 블록 내에서 이루어져야 합니다.
  • 파이프라인의 모든 자재 작업은 노드 블록 내에서 수행되어야 합니다.
  • 노드 블록 내에서 입력값을 사용하지 마십시오.
  • env 전역 변수로 환경 변수를 설정하지 마십시오.
  • 시간 초과로 입력을 래핑하세요.

자주 묻는 질문

저장소를 스캔하여 해당 저장소에 있는 모든 브랜치를 찾습니다. Jenkins파일을 생성하고 각 분기에 대한 작업을 생성합니다. 분기 동작은 해당 파일의 BRANCH_NAME 변수에 따라 결정됩니다.

에 보관하십시오. Jenkins 자격 증명은 환경 블록에서 credentials() 헬퍼 함수를 ​​사용하여 저장하고 읽습니다. 값은 런타임에 주입되고 로그에서는 마스킹 처리되므로 암호가 파일에 저장되지 않습니다.

각 단계가 완료된 후 결과에 관계없이 실행됩니다. 항상, 성공, 실패 및 불안정과 같은 조건을 통해 하나의 파일로 보고서를 게시하고, 아티팩트를 보관하고, 팀에 알림을 보내는 작업을 반복 없이 수행할 수 있습니다.

네. 스테이지 내의 병렬 블록은 분기를 동시에 실행하므로 여러 브라우저에 분산된 스위트 환경에 적합합니다. 각 분기에는 에이전트가 필요하므로 실행 시간은 실행기가 사용 가능할 때만 단축됩니다.

선언적 린터 엔드포인트에 코드를 게시하거나, 이전 실행 결과를 재생하여 스크립트를 편집한 후 저장소를 건드리지 않고 실행하세요. 두 방법 모두 구문 오류를 조기에 잡아낼 수 있습니다.

AI 비서는 긴 콘솔 로그를 읽고, 반복되는 스택을 그룹화할 수 있습니다. trac오류가 시작된 단계를 표시하고, 간헐적인 테스트도 표시합니다. 모든 제안 사항은 원본 로그와 대조하여 확인하십시오.

예. 부조종사 주석에서 단계 이름을 지정하여 선언적 골격을 작성하고, 체크아웃 및 셸 명령과 같은 단계를 완료합니다. Rev에이전트 레이블, 자격 증명 및 시간 제한을 확인하세요. 제안 기능이 종종 잘못 추측하는 경우가 있습니다.

동일한 블록이 세 개 이상 나타나면 Jenkins파일. 공유 라이브러리는 해당 로직을 하나의 버전 관리 저장소에 유지하므로 수정 사항이 모든 프로젝트에 적용되고 각 파일은 자체 단계만 유지합니다.

이 게시물을 요약하면 다음과 같습니다.