1. 程式人生 > >jenkins 配置gitlab CICD持續整合持續釋出

jenkins 配置gitlab CICD持續整合持續釋出

系統

gitlab server

[[email protected] ~]# cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 

安裝gitlab 請參考gitlab cicd (一)系列之安裝gitlb

本文安裝的版本,如下圖
9090


jenkins server

[[email protected] ~]# cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 

安裝請參考jenkins之安裝篇


jenkins 需要安裝gitlab 相關的三個外掛
gitlab-plugin

git

安裝完成 需要重啟jenkins


配置jenkins的webhook

建立jenkins job
job

配置job的gitlab webhook資訊(預設就行)
gitlab-job

配置job的gitlab project資訊
job-01
配置憑證,憑證的token需要從gitlab取
gitlab
token

配置完成


接下來 配置gitlab project,專案結構如下,gitlab project 的根目錄必須有一個名字叫做Jenkinsfile的檔案,否則會報錯
pro

報錯資訊如下
image

Jenkinsfile的內容如下

pipeline {
    agent none
     stages {
        stage('Build') { 
           agent {
               docker {
                    image 'xx/xx/ceres-build:jdk8' 
                      }
                  }
            steps {
                    sh 'cd /var/jenkins_home/workspace/cicdtest/OpenUrl/src/pyrmont/'
                    sh 'pwd'
                    sh 'ls'
                    sh 'javac /var/jenkins_home/workspace/cicdtest/OpenUrl/src/pyrmont/*.java'
                    sh 'cd /var/jenkins_home/workspace/cicdtest/OpenUrl/'
                    sh 'echo ====================/openurl================================'
                    sh 'ls /var/jenkins_home/workspace/cicdtest/OpenUrl/src/pyrmont/'
                    sh 'echo ====================/openurl==================---========'
                    sh 'jar cvfm  /var/jenkins_home/workspace/cicdtest/OpenUrl/pyrmont.jar /var/jenkins_home/workspace/cicdtest/OpenUrl/mymanifest -C /var/jenkins_home/workspace/cicdtest/OpenUrl/src/ .'
                    sh 'ls /var/jenkins_home/workspace/cicdtest/OpenUrl/'
                  }
             }
       stage('Deploy') {
          agent {
            docker {
                   image 'xxxx/xx/image-builder:v2.2'
             }
           }
         steps {
              sh 'pwd'
              sh 'ls'
              sh 'echo ***********************************************************************'
              sh 'ls /var/jenkins_home/workspace/cicdtest/OpenUrl/'
              sh 'docker build -t xx/create-cicd-hub/cicdtest-java:v1127 .'
              sh 'docker push xx/create-cicd-hub/cicdtest-java:v1127'
         }
       }
     } 
}

配置gitlab的webhook
需要兩個內容第一個就是gitlab webhook 觸發jenkins的url,也就是http://10.39.47.65:8080/project/gitlab-pipeline
第二個就是gitlab訪問jenkins服務的Secret Token,也就是8c987f095f5ea94260c62b8d056486a5,獲取Secret Token的方法 如下圖
dd

就可以看到
secret token

在新增的gitlab webhook時需要加上以上兩個內容
token
demo

配置完成


開始測試
提交程式碼到gitlab project 就可以大功告成了

end