본문 바로가기

리눅스

[Jenkins] Jenkins로 CI/CD 파이프라인을 구축하는 방법-2

반응형

Jenkins로 CI/CD 파이프라인을 구축하는 방법

[GitLab 작업]

 jenkins-pipeline 프로젝트 생성

Jenkinsfile 파일 생성

pipeline {
    agent any
    stages {
        stage('Stage 1') {
            steps {
                script {
                    echo 'Hello'
                }
            }
        }

        stage('Stage 2') {
            steps {
                script {
                    echo 'World'
                    sh 'sleep 5'
                }
            }
        }

        stage('Stage 3') {
            steps {
                script {
                    echo 'Good to see you!'
                }
            }
        }
    }
}

액세스 토큰 생성

액세스 토큰 이름 : jenkinspipeline

액세스 토큰 : sZDDPxxxxxx-bNrjjcNf

 

[Jenkins 작업]

gitlab 액세스 토큰 등록

파이프라인 설정

Definition > Pipeline script from SCM

젠킨스 파이프라인 병렬로 JOB 실행

Jenkinsfile 파일

pipeline {
    agent any

    stages {
        stage('Source') {
            steps {
                script {
                    echo 'GIT'
                    sh 'sleep 2'
                }
            }
        }

        stage('parallel Build') {
            parallel {
                stage('Build 1') {
                    steps {
                        echo 'Build 1'
                        sh 'sleep 1'
                    }
                }
                stage('Build 2') {
                    steps {
                        echo 'Build 2'
                        sh 'sleep 1'
                    }
                }
                stage('Build 3') {
                    steps {
                        echo 'Build 3'
                        sh 'sleep 1'
                    }
                }
                stage('Build 4') {
                    steps {
                        echo 'Build 4'
                        sh 'sleep 1'
                    }
                }
                stage('Build 5') {
                    steps {
                        echo 'Build 5'
                        sh 'sleep 1'
                    }
                }
            }
        }

        stage('Test') {
            steps {
                script {
                    echo 'Selenium'
                    sh 'sleep 3'
                }
            }
        }
        
        stage('Deploy') {
            steps {
                script {
                    echo 'Ansible'
                    sh 'sleep 2'
                }
            }
        }
        
    }
}

728x90
반응형