赞
踩
一、jenkins 安装插件
二、配置插件,让 jenkins 能通过 api 连接 gitlab
1、登陆 gitlab,生成 token,登陆的用户要有项目的所有权限,我这里用 tomma 这个用户,用户组权限是 Maintainer
2、登陆 jenkins,把 gitlab 生成的 token 配置到凭证里面
3、进入 jenkins 系统设置,找到 Gitlab 插件配置区域,输入 name,URL,凭证,点击 Test Connection,显示 Success,表示成功
三、创建 jenkins 流水线项目
1、构建触发器中点击,Build when a change is pushed to GitLab. GitLab webhook,这个URL 地址,后续 gitlab 中会用到
2、点击高级,生成 Secret token,后续 在 gitlab 会用到,
如果要指定分支触发自动构建,选择 Filter branches by name,输入要包含的分支,这里选择 master
3、配置 流水线
4、流水线 Jenkinsfile
- node {
-
- properties([
- disableConcurrentBuilds(),
- gitLabConnection(gitLabConnection: 'gitlab'),
- buildDiscarder(logRotator(numToKeepStr: '2')),
- ])
-
- stage('Checkout') {
- echo '开始拉取代码.....'
- git branch: "master", credentialsId: 'Gitlab-Credential', url: 'http://192.168.2.105:9091/xielong/diamond.git'
-
- }
-
- stage('Build') {
- withMaven (
- maven: 'M3', mavenSettingsConfig: 'Maven-Config'
- ) {
- updateGitlabCommitStatus name: 'build', state: 'running'
- echo '开始执行打包操作.....'
- sh 'mvn clean package'
- }
- }
-
- updateGitlabCommitStatus name: 'build', state: 'success'
-
- }
四、配置 gitlab 中的 webhook
1、先用 gitlab 管理员ROOT用户登陆
2、勾选 Allow requests to the local network from hooks and services,允许本地网络访问
3、这一步用普通用户也可以,只要有项目所有权限就可以了(我这里用tomma这个用户)。
点击 gitlab 中的项目,然后进入 Setting > Integrations Settings,这里的 URL,Secret Token 是在 jenkins 里面生成的,最后点击 Add Webhook
2、点击,Push events 进行测试
4、如果显示 Hook executed successfully: HTTP 200,说明连接成功
4、验证 jenkins,触发自动构建,显示是通过 Gitlab push 构建的
5、查看 gitlab
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。