CI/CD

Jenkins 환경 설정 및 빌드 테스트

uuuhhh 2022. 12. 9. 09:35

📌 목표


  • 젠킨스를 설치했으니 필요한 환경설정 구성 및 빌드 테스트를 진행해보고자 한다 !

 

 

⚡ Leggo


  • 필요한 플러그인 설치 및 확인
    • Kubernetes, GitLab, Webhook..

 

  • 웬만한 사전 설정은 Helm 파일을 통해 미리 구성이 된 상태인 것 같아 딱히 만질 것은 보이지 않았다.
  • 일단 하나는 기억하면 좋을 것이 있어 가져와 보았다.
    • # of executors
    • 동시에 배포 가능한 스레드 수를 의미하며 ‘0’은 동시에 여러 배포가 진행되지 않도록 하는 설정이다.

 

  • 테스트 빌드 스크립트를 작성하여 빌드 잡을 만들어보자

 

  • Pipeline을 선택해준다.
    • FreeStyle : Jenkins 자체 GUI를 활용해서 Flow 정의
      • 장점 : 쉽게 접근 가능
      • 단점 : 제한적인 커스터마이징
    • Pipeline : 코드를 통해 연속적인 이벤트 혹은 Job의 그룹 정의
      • 장점 : 폭이 넓은 커스터마이징 / 병렬적인 처리 가능
      • 단점 : 어려움

 

  • 빌드 테스트 스크립트
podTemplate(label: 'builder',
            containers: [
                containerTemplate(name: 'gradle', image: 'gradle:5.6-jdk8', command: 'cat', ttyEnabled: true),
            ]) {
    node('builder') {
        stage('Build') {
            container('gradle') {
                sh "echo pipeline test"
            }
        }
    }
}

 

  • 빌드 스크립트 작성 및 설정

 

  • 빌드 시작

 

  • 빌드 잡 성공 !

  • 콘솔을 통해 성공 확인

 

  • K8s Pod 이벤트 로그를 확인해보니 정상적으로 빌드 Agent 파드가 생성되었다가 종료되는 것을 확인 !

 

 

ref.


[Kubernetes - CI/CD] Customized Jenkins 제작과 활용 - 1/2

쿠버네티스 시작하기(7) - CI/CD 파이프라인 만들기(1/3) - 쿠버네티스 클러스터에 jenkins 설치 및 설정