[CI/CD] Jenkins Pipeline 작성 예시 #3

이번 글에서는 개념을 실제로 구현하는 핵심적인 단계로 나아갑니다. 기본적인 젠킨스 파이프라인 작성 예시를 소개합니다. 이를 통해 젠킨스의 강력한 기능을 활용하여 빌드 및 테스트를 자동화하는 방법을 실제 예시와 함께 확인해보세요.


#7. Pipeline 작성

  • Repository가 private인 경우 사전 설정
    • repo가 private인 경우 gitlab 계정을 활용한 credential 생성이 필요합니다. (추후 clone 할 때 필요함!)
    • Jenkins 관리 – Credential Provider 에서 Username with password로 save해준 후, Credentials에서 본인 깃랩 계정을 넣어 생성해줍니다. (ID는 자유롭게 적어주세요!)

  • 아래는 파이프라인 작성 예시이며, 단순히 git repository를 clone 해오고, 이를 build 하는 단계를 포함하고 있습니다. 이를 참고하여 자유롭게 작성하시면 됩니다.
pipeline {
    agent any

    environment { // env setting 이 필요할 경우에만 넣어주면 됨
        MY_JAVA_HOME = '/usr/homebrew/opt/'
        JDK_VERSION = 'openjdk@11'
    }

    stages { // stages 내부에는 여러개의 stage가 존재할 수 있다.
        stage('set JDK_VERSION') { // jdk settig 이 필요할 경우
            steps { //stage 내부에는 여러개의 step 이 존재할 수 있다.
                script { //script 내부에는 실행시키고 싶은 명령어를 작성해주면 된다.
                    env.PATH = "setting for your environment"
                }
            }
        }

        stage('clone from gitlab') {
            steps {
                catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') { // catchError 를 이용하면 해당 step 이 실패할 경우에도 파이프라인이 종료되지 않고 다음 step 을 실행시킬 수 있다.
                    script {
                        dir('path/your/directory') {
                            try {
                                git branch: 'main', url: 'url which you want'
                            } catch (Exception e) {
                                // 예외처리는 원하는 대로 작성
                            }
                        }
                    }
                }
            }
        }

        stage('build') {
            steps {
                catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
                    script {
                        dir('path/your/directory') {
                            try {
                                sh './gradlew clean && ./gradlew assembleRelease'
                            } catch (Exception e) {
                                
                            }
                        }
                    }
                }
            }
        }
    }
}

여기까지 기본적인 파이프라인으로 코드를 빌드하는 방법을 알아보았습니다. 이제 다음 단계로 넘어가서 더욱 발전된 주제인 ‘artifact’ 생성 방법을 알아보겠습니다. Artifact는 빌드된 결과물을 의미하며, 이를 통해 개발된 애플리케이션의 버전 관리와 배포를 훨씬 용이하게 할 수 있습니다. 파이프라인 내에서 Artifact를 생성하고 관리하는 방법을 자세히 살펴보면서, 코드의 효율적인 배포와 버전 관리를 어떻게 수행하는지 알려드리겠습니다.

1 thought on “[CI/CD] Jenkins Pipeline 작성 예시 #3”

Leave a Comment