部署-jenkins与gitlab结合使用

jenkinis配置

在之前的博文中,博主已经搭建好了gitlab和jenkins环境。接下来,博主就要进行gitlab和jenkins的联合使用。

源码仓库配置

这里,我们需要配置一下gitlab中代码的仓库地址和gitlab用户的credentials认证方式,博主这里使用的username/password方式。

部署-jenkins与gitlab结合使用

jenkins安装Gitlab Hook Plugin 和 GitLab Plugin

如图片所示,在available选项卡中搜索需要安装的插件即可。插件安装完之后,触发构建的选项中就会多出Build when a change is pushed to GitLab这一项。

部署-jenkins与gitlab结合使用

jenkins安装maven插件

跟上一个步骤相同,这里我们需要进行安装maven插件。安装完之后,我们就可以进行创建maven项目的构建任务。

部署-jenkins与gitlab结合使用

jenkins安装maven

jenkins镜像使用的linux发行版本是debain,用下面的指令就可以查看。

部署-jenkins与gitlab结合使用

此时,我们先在外部的容器卷中编写source,list文件,然后覆盖容器内部的source.list文件。source.list是apt工具的镜像源文件,文件内容如下所示:

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security multiverse

然后,我们用root账号进入jenkins运行容器,使用默认的jenkins用户没有权限进行安装和修改操作。

docker exec -it -u root container_id bin/bash

接着,更新镜像源。

apt-get update

最后,进行maven工具的安装。

apt-get install maven

全局参数配置

配置触发构建的时机

  • Trigger builds remotely (e.g., from scripts),通过脚本远程触发,如http调用。
  • build after other projects are built,其它依赖的项目构建时,触发构建。
  • build periodically,周期性构建,不管依赖是否发生变化
  • poll scm,隔一段时间比较源码是否发生变化,如果变更了则更新。
  • Build when a change is pushed to GitLab. 基于gitlab的webhoos进行构建。

这里我们使用gitlab的webhooks进行构建,个人感觉webhooks的方式更加高效,因为gitlab接收到我们的代码推送请求后,会生成一个推送事件,然后使用http请求来调用jenkins的对应任务的构建。

部署-jenkins与gitlab结合使用

还是在Build Triggers 这块区域,我们选择Advanced进行高级选项配置,然后生成当前构建任务的访问token。

部署-jenkins与gitlab结合使用

gitlab配置webhooks

在gitlab项目的配置页面,填写上一个步骤得到的webhook url 和 token,添加成功之后就可以在右下角中查看到已添加的webhooks。

部署-jenkins与gitlab结合使用

在右下脚的webhooks区域,我们可以点击发送Test发送测试请求,如果配置成功的话,可以在界面上看到如下图所示的提示。

部署-jenkins与gitlab结合使用

查看jenkins构建记录

如下图所示,jenkins成功接收到gitlab的推送请求,然后进行了任务的构建。

部署-jenkins与gitlab结合使用

博主微信公众号

部署-jenkins与gitlab结合使用

Original: https://www.cnblogs.com/chenhaoblog/p/13662881.html
Author: 幕友皎敖奔乾
Title: 部署-jenkins与gitlab结合使用

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/711491/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 设计模式-代理模式

    概念:二十三种设计模式中的一种,属于结构型模式。它的作用就是通过提供一个代理类,让我们在调用目标 方法的时候,不再是直接对目标方法进行调用,而是通过代理类 间接调用。让不属于目标方…

    技术杂谈 2023年7月11日
    082
  • 分析自动打卡脚本——大一入学遗作

    HTTP协议 1.何为HTTP协议 HTTP协议又名超文本传输协议,是一种基于TCP/IP的传输协议,顾名思义,其传输的内容为超文本内容,在互联网早期,我们只能传输非二进制的文本,…

    技术杂谈 2023年7月11日
    070
  • c7nUIConfig 环境变量逻辑调整

    博客园 :当前访问的博文已被密码保护 请输入阅读密码: Original: https://www.cnblogs.com/crazycode2/p/16538633.htmlAu…

    技术杂谈 2023年5月30日
    092
  • AotucCrawler 快速爬取图片

    AotucCrawler 快速爬取图片 今天介绍一款自动化爬取图片项目。 GitHub: https://github.com/YoongiKim/AutoCrawler Goog…

    技术杂谈 2023年5月31日
    096
  • canvas 常用 api 及 设计

    canvas元素 可被用来通过脚本(通常是JavaScript)绘制图形。比如,它可以被用来绘制图形,制作图片集合,甚至用来实现动画效果。你可以(也应该)在元素标签内写入可提供替代…

    技术杂谈 2023年5月30日
    0104
  • 树莓派压力测试工具S-Tui+Stress的使用

    压力测试工具S-Tui + Stress的使用 树莓派 背景故事 打算测试一下树莓派外壳的散热性能,需要能压满CPU100%,同时显示温度、CPU频率、CPU占用率,那么这款工具你…

    技术杂谈 2023年7月23日
    078
  • 类成员变量的初始化

    1-1 类成员变量初始化的分类 类成员变量的初始化可简单分为两类:非静态成员变量的初始化(以下简称”普通初始化”)和静态成员变量的初始化(”静态…

    技术杂谈 2023年7月23日
    074
  • SQL增删查改

    — sql 结构化查询语言 操作数据库的 — 注释 –空格 — 创建数据库create database itquanmingxin…

    技术杂谈 2023年7月25日
    075
  • npx vs npm

    npx vs npm npx 使用教程 posted @2019-12-02 22:28 脚本小娃子 阅读(167 ) 评论() 编辑 Original: https://www….

    技术杂谈 2023年5月30日
    0100
  • 部署-docker安装jenkins

    什么是jenkins jenkins是基于java开发的一种持续集成的工具,提供了web界面来进行jenkins的配置与管理。jenkins通常与版本管理工具一起使用,可以实现程序…

    技术杂谈 2023年7月23日
    091
  • 基于STC51单片机的计数器

    基于STC51单片机的计数器 设计要求: 写出矩阵键盘的驱动 分别按下对应的键。数码管会将键盘对应的值累加并显示 设计概述: 按照设计要求,所需要的单片机芯片为STC89C52,所…

    技术杂谈 2023年7月25日
    070
  • MySQL学习之路(1):SQL脚本语言

    使用MySQL数据库,首先安装MySQL数据库,本文所有SQL脚本在MySQL上测试和执行。 安装Mysql服务器;安装Mysql workbench客户端,可以以图形化界面管理m…

    技术杂谈 2023年7月11日
    072
  • 深入C++04:模板编程

    📕模板编程 函数模板 模板意义:对类型也进行参数化; 函数模板:是不编译的,因为类型不知道 模板的实例化:函数调用点进行实例化,生成模板函数 模板函数:这才是要被编译器所编译的 函…

    技术杂谈 2023年7月25日
    0103
  • 二进制状态压缩

    二进制状态压缩 取出整数n在二进制表示下的第k位: (n>>k)&1 取出整数n在二进制下的第0~k-1位 n&((1<<k)-1) &lt…

    技术杂谈 2023年7月11日
    079
  • WIN10平板系统 如何自定义分辨率,修改分辨率

    从以下网址下载Intel网卡驱动,注意只要下载zip版本的(如果是exe 版本的,双击将提示win10无法为此计算机验证正在安装的驱动程序,也包括你用驱动精灵这种软件,也会安装的时…

    技术杂谈 2023年5月31日
    0119
  • 如果还不懂如何使用 Consumer 接口,来公司我当面给你讲!

    背景 没错,我还在做 XXXX 项目,还在与第三方对接接口,不同的是这次是对自己业务逻辑的处理。 在开发过程中我遇到这么一个问题: 表结构:一张主表A ,一张关联表B ,表 A 中…

    技术杂谈 2023年7月11日
    082
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球