zoukankan      html  css  js  c++  java
  • Jenkins

    1 - Jenkins远程构建

    可以通过以POST方式调用API来触发构建任务的执行
    http://<IP>:<PORT>/job/<JOB NAME>/build?token=<TOKEN>&cause=<CAUSE>

    1.1 - 创建用户token


    1.2 - 配置任务的触发器

    在任务的“构建触发器”部分“触发远程构建 (例如,使用脚本)”添加令牌

    1.3 - 远程触发构建

    在浏览器中访问如下URL
    http://192.168.16.200:8080/job/test/build?token=RemoteTesting&cause=testtrigger
    浏览器不会有反应,但Jenkins后台将收到请求并开始构建

    1.4 - 查看任务执行情况

    2 - GitLab触发构建

    2.1 下载插件

    当GitLab分支有代码提交或者合并请求时,通过Webhook配置可以自动触发执行对应的Jenkins任务。
    需要在Jenkins上安装如下插件:https://plugins.jenkins.io/gitlab-plugin

    2.2 Jenkins安全配置

    系统管理---》全局安全配置,取消“防止跨站点请求伪造”

    2.3 Jenkins任务配置

    配置源码管理

    分支为空,表示默认任何代码改动的分支都会拉取。

    配置“构建触发器”

    注意:

    • GitLab webhook URL,要在GitLab中配置。
    • 点击Secret token部分的Generate按钮,生成令牌,这个令牌要在GitLab中配置。

    2.4 GitLab项目配置

    在project---》Settings---》Integrations---》配置Jenkins生成的GitLab webhook URL和Token,并指定触发条件。

    2.5 测试GitLab Webhook

    在GitALab的项目添加webhook 成功后,可以通过提供的Test功能测试配置是否成功。

    选择Test按钮下的操作类型

    如果配置成功,那么Test的结果会显示“Hook executed successfully: HTTP 200”

    Jenkins任务会被触发执行

    3 - 其他工程构建后触发

    4 - 问题处理

    GitLab通过webhook向Jenkins发送请求,报错“Requests to the local network are not allowed”

    问题分析

    Gitlab10.6 版本以后不允许向本地网络发送webhook请求,如果想向本地网络发送webhook请求,则需要使用管理员帐号登录做指定配置。

    处理方法

    Admin area---》Settings---》OutBound Request,勾选“Allow requests to the local network from hooks and services”---》保存更改。

  • 相关阅读:
    face-morpher过程函数分析
    python,在路径中引用变量的方法
    【django学习】request.POST与request.POST.get两者主要区别
    微信小程序wx.uploadFile的两个坑
    python PIL/cv2/base64相互转换
    OpenCV-Python cv2.imdecode()和cv2.imencode() 图片解码和编码
    cv2.imread()
    详解Ubuntu Server下启动/停止/重启MySQL数据库的三种方式(ubuntu 16.04)
    python使用post请求发送图片并接受图片
    前端 img标签显示 base64格式的 图片
  • 原文地址:https://www.cnblogs.com/anliven/p/12064655.html
Copyright © 2011-2022 走看看