zoukankan      html  css  js  c++  java
  • 部署-jenkins与gitlab结合使用

    jenkinis配置

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

    源码仓库配置

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

    源码仓库配置

    jenkins安装Gitlab Hook Plugin 和 GitLab Plugin

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

    安装插件

    jenkins安装maven插件

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

    maven插件

    jenkins安装maven

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

    查看系统发现版本

    此时,我们先在外部的容器卷中编写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的对应任务的构建。

    配置触发构建时机

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

    生成访问token

    gitlab配置webhooks

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

    配置webhooks

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

    查看配置是否成功

    查看jenkins构建记录

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

    查看jenkins构建记录

    博主微信公众号

  • 相关阅读:
    postgresql postgres.Jsonb
    gorm jsonb
    json
    postgresql重置序列和自增主键
    go build x509: certificate has expired or is not yet valid
    权限修饰符
    交换两个变量的值
    Java编译报错:编码GBK的不可映射字符
    原码反码补码的理解
    Scanner类中hasNext()方法的解析
  • 原文地址:https://www.cnblogs.com/chenhaoblog/p/13662881.html
Copyright © 2011-2022 走看看