在第一部分上一次写的集成文档中中Jenkins是可以主动拉取GitLab 代码或者定时拉取代码,进行构建;第二部分是为了向 GitLab push 代码,或执行其它一些操作时,GitLab 可以将这些事件通知给 Jenkins,trigger Jenkins 工程的构建自动执行。需要在 GitLab 和 Jenkins 的多个地方做配置:(1)、在 Jenkins 中安装插件;(2)、配置 GitLab 用户;(3)、配置 Jenkins 服务器;(4)、配置 Jenkins 工程;(5)、配置 GitLab 工程。

gitlab通过webhook去通知jenkins部署代码,

1.在Jenkins中安装插件

在第一部分的基础上,jenkins插件管理需要安装Gitlab Hook Plugin插件

2.配置 GitLab 用户

创建一个用户或选择一个已有用户,用来让 Jenkins 和 GitLab API 交互。这个用户将需要是全局的管理员或添加进每个组/工程,并作为成员。需要开发者权限来报告构建状态。这是由于,当使用了 'Merge when pipeline succeeds' 功能时,成功的构建状态可以触发合并。GitLab Plugin 的一些功能可能需要其它的一些权限。比如,有一个选项用于在构建成功时,接受 merge request。使用这一功能需要 developer,master 或 owner 级的权限。

在用户设置里面,设置Access Tokens,用于后面的Jenkins 服务器配置

3.配置 Jenkins 服务器

需要配置 Jenkins 服务器来与 GitLab 服务器通信

在 Jenkins 中,选择 系统管理 -> 系统设置,在系统设置中找到 GitLab 的部分:

在 Connection name 后的输入框中输入连接名称,在 Gitlab host URL 后的输入框中输入 GitLab 服务器的 URL 地址。点击 Credentials 行最后面的 Add -> Jenkins 按钮,弹出如下对话框,在 Kind 后的下拉列表中选择 GitLab API token,并把上一步拷贝的 Private token 粘贴到 API token 后面的输入框中。随后在 Credentials 的下拉框中选择 GitLab API token。

4.配置 Jenkins工程

打开 Jenkins 工程的配置页面,找到 构建触发器 的部分,勾选 Build when a change is pushed to GitLab 那一行,后面的 URL,在配置 GitLab 工程时需要用到

5配置GitLab工程

gitlab项目中,设置Webhooks(账户需要被分配项目相关的权限),里面的URL填的就是上面jenkins里面的URL

新增webhook完成后,可以点击旁边的测试按钮,检测是否有效:

如果有效,jenkins会有构建历史出现

注意:

可能报错gitlab webhook 403问题,一般描述为Error 403 anonymous is missing the Job/Build Permission

解决方法:

Jenkins安装插件:gitlab/gitlab hook/Build Authorization Token Root Plugin

Jenkins系统管理-->configure global security -->去掉勾选  防止跨站点请求伪造(可能)

Jenkins系统管理-->系统设置-->去掉 Enable authentication for '/project' end-point

6.持续构建工程

当开发人员向 GitLab push 代码时,GitLab 就将事件通知给 Jenkins,trigger Jenkins 工程的构建自动执行。在“构建历史”中,能够看到事件:

点开进度,可以查看gitlab上本次提交更新相关的信息:

点击“控制台输出”中查看本次构建日志信息,包括maven打包信息,jenkins将打包好的jar包上传到指定文件夹内的信息,部署脚本打印信息,项目启动运行信息等:

项目启动了,后面还会打印出项目运行信息,根据最终运行是否全部成功,决定最终本次构建状态是什么,例如:(由于测试服务器缺少相关运行环境而报错)

Jenkins集合git、maven,持续集成gitlab项目(二)相关推荐

  1. Jenkins+Git+Maven持续集成经典教程

    作者:mousycoder(极简小站) segmentfault.com/a/1190000002895521 Jenkins 是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变得 ...

  2. Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记 - passover【毕成功的博客】 - 51CTO技术博客...

    Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记 - passover[毕成功的博客] - 51CTO技术博客

  3. Jenkins + Git + Maven + tomcat集成环境搭建

    折腾了好几天,终于把Jenkins + Git + Maven + tomcat集成环境搭建起来了,最终主要实现"自动构建.部署"web应用. 1.安装环境 操作系统:Centos ...

  4. 华为表哥手把手教你利用Jenkins持续集成iOS项目,教不会我花式拉翔!!!

    手把手教你利用Jenkins持续集成iOS项目: 前言 众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段.用户们都是很挑剔的.如果一个公司的推广团队好不容易砸了重金推广了一个APP ...

  5. 使用Jenkins持续集成Vue项目配置Sonar任务

    title: 使用Jenkins持续集成Vue项目配置Sonar任务 tags: jenkins Vue.js Sonar categories: ci date: 2017-12-05 22:09: ...

  6. jenkins + Git 搭建持续集成环境

    2019独角兽企业重金招聘Python工程师标准>>> 持续集成通过自动化构建.自动化测试以及自动化部署加上较高的集成频率保证了开发系统中的问题能迅速被发现和修复,降低了集成失败的风 ...

  7. Jenkins与Docker的持续集成实践

    本文讲的是Jenkins与Docker的持续集成实践[编者的话]持续集成(CI/CD)是一种软件开发实践.用于帮助团队成员频繁.快速的集成,测试他们的工作成果,以尽快发现集成错误. 更频繁.更早的集成 ...

  8. 使用Jenkins搭建iOS/Android持续集成打包平台

    http://debugtalk.com/post/iOS-Android-Packing-with-Jenkins/ http://debugtalk.com/post/iOS-Android-Pa ...

  9. git maven 一键部署_Jenkins Git Maven搭建自动化部署项目环境 邮件通知

    简介 折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.com/j ...

最新文章

  1. java with关键字_[Java教程]javascript 里面 with 关键字
  2. Template Code 无法使用 this.Host 报错
  3. Android之自定义带圆角的水纹波效果
  4. Python | Tkinter中的文本区域和按钮
  5. 整活插件 炉石传说_炉石传说:国服再搞大动作?官方插件神秘新功能压力测试开启...
  6. sql多语句表值函数_构造一个特殊的多语句表函数来检查SQL Server的运行状况
  7. 效果良好!构造一个输入速度的神经网络,以DQN方式实现小游戏的自动控制
  8. php字符串操作整理,《PHP字符串操作》收集整理
  9. 3.SPSS Modeler数据基本分析笔记
  10. 用 construct 2 制作简易弹幕游戏
  11. 使用include-what-you-use优化编译速度
  12. 凝思操作系统:U盘无法识别和读取问题
  13. 添加Adobe PDF 打印机
  14. 网页复选框设置只能选一个_网页自动填表基础教程从简单开始
  15. PaddleRec与Milvus深度结合,手把手带你体验工业级推荐系统召回速度
  16. php 读取excel中的内容到mysql 数据库
  17. 【Linux】第二篇:Linux环境及开发工具
  18. 秋月之谋:早评黄金1505空单精准出击,空军在下一城!原油保持观望
  19. 2020-1-17数字逻辑于数字系统课程实验一(门电路逻辑功能及测试)
  20. 基于Django3.0的Python版网易云音乐API

热门文章

  1. 一款针对中小学研发的智慧校园系统源码,智慧学校源码,Java+智慧安防+智慧互联+智慧电子班牌+小程序源码
  2. 怎么用iphone或安卓手机远程控制电脑
  3. 全世界最酷的软件!谷歌地球重磅更新
  4. c语言学不好怎么办,英语不好应该怎么学c语言
  5. 杀毒软件如何被XP SP2的安全中心识别(转)
  6. 2021年金融机构贷款投向统计报告
  7. UI设计理念——一切从用户出发
  8. 治疗牛皮癣应该注意什么
  9. 刘若英唱《后来》失控大哭:初听不知曲中意,再听已是曲中人
  10. 2023 在线截图生成工具多功能系统html源码 可二开